我談的字符串是類似以下內容:正則表達式中的字符串每個點數3
xxxxx.xxxxxx.xxx.yyyyyyy.yyyyyy.yyyyyyyy.zzzz
其中,x,y和z比其他任何東西「」 (點),即字母數字,特殊字符,空格,換行等
我想:
(\w|\d|\s){1,}.\.{3,}
我談的字符串是類似以下內容:正則表達式中的字符串每個點數3
xxxxx.xxxxxx.xxx.yyyyyyy.yyyyyy.yyyyyyyy.zzzz
其中,x,y和z比其他任何東西「」 (點),即字母數字,特殊字符,空格,換行等
我想:
(\w|\d|\s){1,}.\.{3,}
使用:
(?:[^.]+\.){3}
這適用於{3}
quanti對整個團隊來說更爲複雜,而不僅僅是每個團隊結束時的.
。既然你想匹配3組,我使用{3}
; {3,}
表示3個或更多組。
它使用更簡單的[^.]
來匹配除.
以外的所有內容(不需要在括號內換算點,因爲它沒有任何特殊含義)。
要在preg_replace
中使用此替換每個第三個點,您需要匹配捕獲組中的點之前的所有內容。然後您可以使用$1
將其複製到替換字符串。
preg_replace('/((?:[^.]+\.){2}[^.]+)\./', '$1<br/>', $string);
使用^
在一個字符前面匹配的一切,但這個人物
([^\.]+\.){3,}
您的正則表達式正在查找至少3個連續的點。你爲什麼在那裏有{3}? – Barmar 2014-09-20 21:03:00
你真的想要匹配哪部分字符串?你是什麼意思__點數3_? – Barmar 2014-09-20 21:04:13
我的意思是字符串中的每個第三個點,即假設我們有一個包含10個點的字符串,所以我想匹配點編號:3,6和9. – SaidbakR 2014-09-20 21:08:45