簡體   English   中英

Unix中的Sed或字符串替換命令可將序列后的最后一個第一個字符更改為UpperCase

[英]Sed or String Replace command in Unix to change last First Character after Sequence to UpperCase

我基本上有這些xml文件,我需要在其中更改后的第一個字母

例如。 結果:

我試過: sed 's/<structure name=\\"/\\U\\/g'

但是,這會將整個單詞更改為大寫。 有人可以幫我嗎?

sed 's/<structure name=\"\(.\)/<structure name=\"\U\1/'

sed僅將被替換為大寫的字符串轉換。 我們可以使用捕獲組僅將序列后的第一個字符轉換為大寫。

否則,您也可以使用\\E ,它類似於\\U ,除了它停止轉換字符而不是啟動字符。

\\U用於轉換所有字符。 您將需要使用\\u\u003c/code>轉換第一個匹配項。

另外,您將需要對它們進行分組以確保正確的字母被轉換:

sed 's/\(<structure name=\"\)\(.\)/\1\u\2/' xml-file

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM