我試圖找到正則表達式來查找字符串中的字母數字單詞,即字母或數字組合的單詞。如果一個單詞是純數字或純字符,我需要放棄它。只選擇字母數字字。正則表達式。 PHP
4
A
回答
5
試試這個正則表達式:
\b([a-z]+[0-9]+[a-z0-9]*|[0-9]+[a-z]+[a-z0-9]*)\b
或者更緊湊:
\b([a-z]+[0-9]+|[0-9]+[a-z]+)[a-z0-9]*\b
這符合所有單詞(注意這個詞邊界\b
),要麼與一個或多個字母后跟一個或啓動更多的數字,反之亦然,後面跟着一個或多個字母或數字。所以至少一個字母和至少一個數字的條件總是滿足的。
0
3
隨着向前看符號:
'/\b(?![0-9]+\b)(?![a-z]+\b)[0-9a-z]+\b/i'
快速測試還示出了示例性的使用:
$str = 'foo bar F0O 8ar';
$arr = array();
preg_match_all('/\b(?![0-9]+\b)(?![a-z]+\b)[0-9a-z]+\b/i', $str, $arr);
print_r($arr);
輸出:
F0O
8ar
0
\b(?:[a-z]+[0-9]+|[0-9]+[a-z]+)[[:alnum:]]*\b
相關問題
- 1. 正則表達式的字母數字
- 2. 正則表達式不字母數字
- 3. 字母數字的正則表達式
- 4. 正則表達式字母數字jquery
- 5. 正則表達式屬性,只允許字母數字字符
- 6. 的字母數字字符正則表達式和 - /只
- 7. 正則表達式只返回字母
- 8. 正則表達式匹配只包含字母和數字的字母數字
- 9. php正則表達式數字和字母不允許只是數字
- 10. 正則表達式字母數字字符串+特殊字母
- 11. 正則表達式只接受字母數字數據
- 12. 正則表達式可選的7個字母數字字符
- 13. 正則表達式只有字母一個大寫字母
- 14. [字母數字] _ [字母數字] _ [數字]的模式的正則表達式
- 15. 正則表達式只允許字母數字
- 16. 正則表達式只允許字母和數字
- 17. 只有字母,數字,破折號的正則表達式?
- 18. Java的正則表達式大寫字母和數字只有
- 19. flex:只接受數字,字母,空格的正則表達式
- 20. 正則表達式 - 只有當成功由字母或數字
- 21. 正則表達式匹配一個字母字母和數字
- 22. 正則表達式:匹配與數字字母或字母只有
- 23. 正則表達式:拆分字符串字母數字/數字
- 24. PHP的正則表達式數字加一個字母
- 25. 正則表達式PHP字母,數字和默認符號
- 26. 字母+數值的正則表達式
- 27. [字母數字]的正則表達式建議[字母數字.- _ @] 31個字符
- 28. 正則表達式的字母數字字符,@&'()+ /:和一個連字符只有
- 29. 正則表達式 - 選擇兩個字符之間的數字
- 30. 在c#字母數字的正則表達式表達
或者'\ b([a-z] + [0-9] + | [0-9] + [a-z] +)\ w * \ b'更加緊湊。 – tj111 2010-01-14 18:45:25
@ tj111:根據定義,'\ w'不只是'[A-Za-z0-9]'。通常它裏面有更多的字符,比如'_'或其他不是ASCII字符的字符。 – Gumbo 2010-01-14 18:47:36
只有前導字符是數字時纔有效。馬克的表達工作正常。 – manny 2010-01-14 19:03:55