1樓:匿名使用者
case語句只支援shell萬用字元,*表示任意字串,?表示任意字元,中括號表示字符集如[a-z]表示一個小寫字母。
如果要處理正規表示式可以用if [[字串 =~正則" ]這種形式。
#!/bin/bash
if [[aaab =~a+b" ]then
echo aaab包含正則'"a+b"'
elseecho aaab不符合正則fi
shell case語句取值範圍問題請教
2樓:匿名使用者
case 的條件判斷是基於字串的,對於你這個問題可以這麼來read i
case $i in
20|[1][0-9]|[1-9]) echo $i ;;
*) echo 'err' ;
esac但對於一般的數值範圍條件,最好用if elif else語句。
為什麼我寫shell指令碼的時候,用正規表示式卻說我語法不對呢?
3樓:網友
shell裡面不能把正規表示式當命令吧,只是有些命令要用到正規表示式而已,比如grep。如果你是把正規表示式當成一些命令的引數的話,那麼也有可能是,表示式語法不正確吧,像vim、shell、perl他們的正規表示式都有或多或少的不同,要看文件了。
怎麼樣在shell中表達不匹配右邊的正規表示式
4樓:拓跋娟麗
這樣可以嗎?
sed 's/test./&pass/' 要是按照我的意思。
sed 's/$/pass/' 就行了完全按照你那個命令走的話是。
sed 's/[[alpha:]]digit:]]psss/g' log
shell 正規表示式問題
5樓:網友
問題描述應該是這樣的:"去除多餘的雙引號,即,對多個連續的雙引號,只保留一個"。
因此,這樣就可以了:
sed -r 's/"+g' 正則中,+表示重複前面一個字元1次或以上(至少一次)。
當然,也可以寫為:
sed -r 's/"/g' 表示2次或以上。這樣,出現1次的就可以不用處理。
實測結果如下:
6樓:匿名使用者
下面的 2個正規表示式執行後 全部失敗 請高手幫幫忙看看 是怎麼回事。原始資料:
正規表示式替換後資料。
sed -i /system/ -e 's/^[#;]*0-9a-za-z]\[t]=[t][0-9.:]0-9a-za-z]\\122222222222222222222/g'原始資料:
正規表示式替換後資料。
sed -i /system/ -e 's/^[#;]*0-9a-za-z]\\0-9a-za-z]\\122222222222222222222/g'
字串uxv連續出現了10次(就是uxvuxvuxv...的正規表示式是什麼?
(uxv)? 這樣實驗過,不對。
uxv 是表示字元v出現了10次。
shell中文字的處理(如何使用正規表示式 來去蕪取精)
7樓:常綠
2007 年 5 月 28 日幾乎所有重要問題都需要從無用資料中過濾出有用資料。瞭解大量的 unix
如何在 shell 中使用正規表示式
8樓:良玉小帝
ls、grep、sed、awk這些命令下都可以用正則。
linux shell正規表示式的問題
9樓:夢裡尋你我他
\w+的意思是數字和字母的字串。
而你後一個用的是[a-z]+小寫字母的字串其實上面那個\w ,你也可以寫成[a-za-z0-9_]+效果是一樣的。
關於shell正規表示式
10樓:網友
點號是匹配任意一個字元。
星號表示重複前面一個字元0次或多次。
11樓:匿名使用者
*的意思是匹配前一個模式0次或多次。
正規表示式怎麼匹配這樣的文字,正規表示式怎麼匹配標點符號
正則表達 括號中的捕獲內容就是 正規表示式怎麼匹配標點符號?如何用正規表示式匹配漢字?先用靚湯或正則找到這個節點,再用上面的字元組匹配。假設這個節點只有一個,用法如下 import reimport requests as reqfrom bs4 import beautifulsoupurl ht...
易語言正規表示式的中的正規表示式文字怎麼取的
易語言不支援逆向斷言,所以你只能使用分組。取group 2 即可,具體易語言怎麼取正則的分組請自己參考易語言的api 上面文字,中兩個人對話 共同開始結束特徵 開始 結束 換行 給出表示式 就這樣,詳細的加q 版本2.支援庫 duregex 程式集 視窗程zhi序集1 子程式 按鈕1 被單擊 區域性...
正規表示式中的或是什麼意思正規表示式中的或是什麼意思?
是一個限 來定符,用來修飾前一個字自 符或分組,限定匹配重複的數量為任意數量。例如 正規表示式 a 可以匹配aaa aaaaaaa aaaaaaa等等 正規表示式 ab 可以匹配 ababababab ababababababab等等 需要注意個是,與 不同,要求重複數量至少為1,則可以為0,所以字...