正規表示式替換字串,正規表示式替換字串

2022-12-18 10:46:04 字數 2413 閱讀 6873

1樓:

我覺得這裡邊主要有兩個問題, 特別容易讓人產生誤解:

1, 全域性替換

從上圖可以看出, 這個正則其實有兩輪匹配成功, 在第一次匹配成功後, 全域性模式下, 正則不會停止匹配, 而是從上次匹配成功的位置開始, 繼續向後匹配. 也就是說, 第一輪匹配到 abc 後, 表示式會從 c 和 @ 之間這個位置重新開始匹配.

2, .* 能夠匹配位置

*, 表示0個或多個, 當 * 表示 0 個的時候, 其實匹配的是乙個任意位置, 也就是說, 第二輪的時候 .* 成功匹配到了 c 和 @ 之間這個位置, 而且這個位置同時滿足(?=@.

+)這個條件, 這樣整個表示式匹配成功, 這樣就被替換了兩次.

.+ 這種情況, 至少匹配乙個字元, 無法匹配位置, 所以在第一輪匹配成功後, 就沒有辦法再匹配到其他部份了.

2樓:費炫仲孫良材

第一種方法:

字串中的"aa,b"直接換成

",b"在字串中"aa,b"

是唯一的。

**如下:

?php

$string

="aa,bb,aa,cc,aa,dd,aa,ee,aa";

echo

ereg_replace

("aa,b",

",b",

$string);

?第二種方法:

將原字串的首字母轉換成大寫使得需轉換的子字串成為唯一**如下:

?php

$string

="aa,bb,aa,cc,aa,dd,aa,ee,aa";

$string

=ucfirst($string);

echo

ereg_replace

("aa",

"",$string);

?希望能幫助你解決問題。

使用正規表示式替換字串

3樓:

我覺得這裡邊主要有兩個問題, 特別容易讓人產生誤解:

1, 全域性替換

從上圖可以看出, 這個正則其實有兩輪匹配成功, 在第一次匹配成功後, 全域性模式下, 正則不會停止匹配, 而是從上次匹配成功的位置開始, 繼續向後匹配. 也就是說, 第一輪匹配到 abc 後, 表示式會從 c 和 @ 之間這個位置重新開始匹配.

2, .* 能夠匹配位置

*, 表示0個或多個, 當 * 表示 0 個的時候, 其實匹配的是乙個任意位置, 也就是說, 第二輪的時候 .* 成功匹配到了 c 和 @ 之間這個位置, 而且這個位置同時滿足(?=@.

+)這個條件, 這樣整個表示式匹配成功, 這樣就被替換了兩次.

.+ 這種情況, 至少匹配乙個字元, 無法匹配位置, 所以在第一輪匹配成功後, 就沒有辦法再匹配到其他部份了.

4樓:匿名使用者

str.replaceall("[a-z]+\\d", "hello").replaceall("[^a-za-z]", "==");

正規表示式,替換字串?

5樓:陽光的雷咩咩

光匹配尖括號沒用吧,如果想得到尖括號前的內容

/>(.+?)<\d/

正規表示式將查詢到的字串全文替換

正規表示式怎麼替換乙個固定的字串

6樓:匿名使用者

var str="abc[000] abc[000] abc[000] abc[000] abc[000] abc[000] abc[000] abc[000].";

var reg=/(abc\[)(\d)(\])/g;

var index=-1;

str = str.replace(reg, function(a,b,c,d));str

j**a正規表示式怎麼表示字串

正規表示式 替換字串中間部分字元

7樓:匿名使用者

^不固定的星號

var reg=/^(.)(.*)(.)$/;

var str="sadf[.,saj#ofief";

str.replace(reg,"$1****$2");

///////////////////////////////////////////

固定的星號

var reg=/^(.)(.*)(.)$/;

var str="sadf[.,saj#ofief";

str=str.replace(reg,function(a,b,c,d));

console.log(str);

j**a 正規表示式 替換字串中人名

正規表示式,匹配中文問題,正規表示式匹配中文,網上有兩種 u4e00 u9fa5 和 x00 xff ,但貌似不只匹配中文。

換個軟體吧。大大,誰說正則不能支援中文。當然,你也可以用unicode來代替。不過,還要去查漢字的unicode,太累了。只能跟你說,很多支援正則的軟體都能支援中文。正則支援 中文 regextester.exe 很多地方有的下 the regulator 這兩個都是比較經典的軟體 正規表示式匹配中...

C正規表示式匹配無結果,c 正規表示式在正則測試器中正常,但是在vs中卻沒有資料,這是為什麼?

正則 s hash u s 0 3 0 9 size 你在正規表示式測試工具裡面測試沒有問題截個圖出來看看 源字串和你寫正則一起 你那些 s 是想匹配什麼?從你上面寫的原始碼部分來看,那裡應該是個換行,也就是 r n 也有可能只有其中乙個,根據系統自己判斷,其他的部分應該沒有問題。你想要什麼?把結果...

易語言正規表示式,易語言中怎麼用正規表示式

版本 2 支援抄庫 regex 支援庫 spec 區域性變數 正則,正規表示式 區域性變數 搜尋,搜尋結果,0 區域性變數 文字,文字型 常量1 就是被搜尋的文字 小明 文字 常量1 正則.建立 搜尋 正則.搜尋全部 文字 除錯輸出 搜尋 1 取子匹配文字 文字,1,s s 就可以了 用這個 d d...