当前位置:首页 » 操作系统 » linux字符串拼接

linux字符串拼接

发布时间: 2022-06-10 16:42:31

Ⅰ 在linux系统中OC编程如何实现字符串连接

由于Xcode对中文支持良好,所以在开发过程中经常直接使用中文字符串。

不过苹果推荐多语言化,需要为中文字符串添加个NSLocalizedString宏。

#!/usr/bin/python
# -*- coding: utf-8 -*-

'''''
Localization The Objective-C Code
@"..." --> NSLocalizedString(@"...", nil)
Jason Lee 2012-03-01
'''

import os, sys
import re
import codecs

targetPattern = pile('@"[^"]+"')
global newFile, newFilePointer

def isChineseCharacter(ch):
return0x4e00 <= ord(ch) <= 0x9fa5

def hasChineseCharacter(str):
for char in str:
if isChineseCharacter(char):
returnTrue
returnFalse

def buildNewString(oldStr):
newStrPrefix = 'NSLocalizedString('
newStrSuffix = ', nil)'
newStr = newStrPrefix + oldStr + newStrSuffix
return newStr

def processLine(line):
global newFile, newFilePointer

matchResult = targetPattern.findall(line)
for result in matchResult:
if hasChineseCharacter(result):
#print result, buildNewString(result)
p = pile(result)
line = p.sub(buildNewString(result), line)

newFilePointer.write(line)

def processFile(filename):
#Xcode file is saved with utf-8
global newFile, newFilePointer
newFile = 'Replaced.' + filename
newFilePointer = codecs.open(newFile, 'wb', 'utf-8')

fp = codecs.open(filename, 'rb', 'utf-8')
for line in fp:
processLine(line)
fp.close()

newFilePointer.close()

oldFile = 'Old.' + filename
os.system('mv ' + filename + ' ' + oldFile)
os.system('mv ' + newFile + ' ' + filename)
#os.system('rm -f ' + oldFile)

if __name__ == "__main__":
if len(sys.argv) > 1:
output = os.popen('ls ' + sys.argv[1]).read()
filelist = re.split('\n', output)
filelist = filelist[:-1]
#print filelist

print'Localizing...'

for file in filelist:
if os.path.exists(file):
try:
#print 'Processing File :', file
processFile(file)
except Exception as e:
print e

print'Localization Done.'
之后需要做的事情参考:

代码没用经过严格验证,请慎用。起码,没有检查该字符串是否已经加了NSLocalizedString宏。

Ⅱ linux下如何替换文件中每一行指定位置字符串

我这里使用的是代码截取的方式来输出的,既然你要删除的是第五个到第十个字符,那么我就取前四个,以及第10个以后的字符,然后再中间加上六个*号,就能拼接出所需要的字符串。代码如下:
for line in $(cat test.txt);
do
echo "${line:0:4}******${line:11}"
done
第一个变量${line:0:4}表示从一行第0个开始取,取4个,中间加上6个星号,第二个${line:11}变量表示从第11个开始取,一直取到最后一位。这样拼接起来就是你需要的内容了,如果想把这些内容重新输入到文件中,加上一个重定向就可以了,不知道我说清楚没有,希望可以帮助到你。

Ⅲ linux中怎么样拼接字符串

你好像没有安装桌面啊
你好像没有安装桌面啊

Ⅳ linux下c语言怎样把字符串与整数连接起来

用sprintf

charszBuff[16];
sprintf(szBuff,"%s%d","aaaa",i);

Ⅳ linux中用shell时奇怪的字符串拼接和时间计算问题

testt=$(date +%Y-%m-%d)
date2="14/08/12"
test=20
testtt="${test}${date2}"
time1=$(date +%s -d "$testt" )
time2=$(date +%s -d "$testtt" )
time=$(($time1-$time2))
echo $time

改成引号,去掉括号!!

Ⅵ linux join 命令可以连接字符串吗

字符串最好放到双引号中,防止中间有空格,如name中就可能存在空格。 改为: total="${name}""${email}""${other}" 或者 total="$name""$email""$other"

热点内容
游戏服务器php 发布:2024-11-02 10:21:51 浏览:953
家乡编程创 发布:2024-11-02 10:11:32 浏览:282
ipad和安卓板玩游戏哪个好 发布:2024-11-02 10:02:37 浏览:804
邮箱密码怎么查看 发布:2024-11-02 09:59:46 浏览:724
wand应用怎么安卓下载 发布:2024-11-02 09:57:46 浏览:80
为什么手机银行密码是8位 发布:2024-11-02 09:54:19 浏览:460
win10搭建一个本地服务器 发布:2024-11-02 09:53:36 浏览:348
git搭建本地服务器windows 发布:2024-11-02 09:49:23 浏览:783
跳过地址的代理服务器 发布:2024-11-02 09:30:03 浏览:388
Linux配置yum源是什么意思 发布:2024-11-02 09:18:13 浏览:526