當前位置:首頁 » 操作系統 » 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"

熱點內容
買釣箱要哪些配置就夠了 發布:2025-01-11 20:24:23 瀏覽:509
防腳本取色 發布:2025-01-11 20:15:17 瀏覽:638
為什麼莊周活動安卓沒開始 發布:2025-01-11 20:14:23 瀏覽:460
我的世界花雨庭國際服伺服器地址 發布:2025-01-11 20:13:27 瀏覽:718
c數據導入資料庫 發布:2025-01-11 20:07:55 瀏覽:828
可以上傳片 發布:2025-01-11 20:07:55 瀏覽:792
outlook伺服器郵件怎麼找 發布:2025-01-11 20:06:12 瀏覽:95
javac編譯jar 發布:2025-01-11 20:06:11 瀏覽:483
電腦伺服器小功率 發布:2025-01-11 20:02:02 瀏覽:832
唱吧上傳自己的歌 發布:2025-01-11 19:57:35 瀏覽:661