2012-07-16 50 views
1

我在bash中寫了一個xml元素。我需要將一些以數字開頭的字符串替換爲以字符開頭的字符串,所以它是一個有效的XML標籤(記住xml標籤不能以字母數字字符開頭)。如何檢查字符串的第一個字符是否是bash中的數字?

例如,

str = 192.16.76.52,1001 

這不是一個有效的XML標籤,即我不能這樣做

<192.16.76.52,1001> 
..... 
</192.16.76.52,1001> 

所以,我打算來檢測,如果它是一個數字的東西代替它像

IP192.16.76.52 

我知道我可以用IFS來做,但它可能需要很長時間和額外的代碼。

既然你知道主要問題,隨時評論或提供建議。

由於

+0

使用'。'可能不是一個好主意。在元素名稱中。 – chepner 2012-07-16 14:10:42

+0

哦,我看到....我不認爲我會永遠解析XML文件....但你認爲,它會影響XML文件格式? – howtechstuffworks 2012-07-16 14:11:22

+0

是的,我刪除它,我也需要刪除逗號在這裏.... – howtechstuffworks 2012-07-16 14:17:52

回答

6

=[[的RHS需要glob模式。

$ [[ 123 = [0-9]* ]] ; echo $? 
0 
$ [[ foo = [0-9]* ]] ; echo $? 
1 
相關問題