這裏是我的正則表達式:(^[A-Za-z][A-Za-z0-9_]*)=([A-Za-z0-9, _.]+|^(?:(?:[0-9]|[1-9][0-9]|1[0-9]{2}|2[0-4][0-9]|25[0-5])\.){3}(?:[0-9]|[1-9][0-9]|1[0-9]{2}|2[0-4][0-9]|25[0-5]))
幫助使用正則表達式
我希望我可以使用像這樣的東西在的形式配置文件相匹配的文本:
variable=value
ipaddress=127.0.0.1
等等
與測試字符串
test=127.0.0.1
test1=192.168.0.1
test2=hello world
test3=helloworld
test4=Carl_Sagan,Awesome,cool story bro
test5=%should not match(#$&!&$(5vzxcv
6test=should not match
我上測試3210和其他一些
這個表達式只會匹配第一行。當我剪掉表達的不同部分時,它的工作原理就是我想要的,但是當我把它們放在一起的時候並不合適。
在測試網站http://gskinner.com/RegExr/它工作得很好。
^(?:(?:[0-9]|[1-9][0-9]|1[0-9]{2}|2[0-4][0-9]|25[0-5])\.){3}(?:[0-9]|[1-9][0-9]|1[0-9]{2}|2[0-4][0-9]|25[0-5]))
將在測試字符串返回所有的IP地址
(^[A-Za-z][A-Za-z0-9_]*)=
將返回所有variable=
頁面
[A-Za-z0-9, _.]+
上會返回幾乎所有的東西
你們能幫助我理解它是什麼我做錯了?
你做錯了主要的事情是不是說明你想要什麼。鑑於上面的輸入,你想要的輸出是什麼? – Bohemian
你使用哪種語言?你的正則表達式分別匹配每條線。你是否想用任何一個正則表達式匹配任何東西? – Howard
@波希米亞所需的輸出是除了那些不應該匹配的行之外的每一行。這是最後兩個。它只給我第一個。 – Noob