2012-05-15 62 views
0

(非常新正則表達式) 我有一個輸入字符串,它是數字(0-9),字母(A-Z,a-z)和特殊字符的組合。我如何使用正則表達式來識別下面的例子?示例:123a,abc2,12ab,ab12,1 @ 3a,@ a13,%1a3,$ 13。識別連續的字符和數字

有效例子: 123 + 456或者,使用任何其它操作者/牙套像

*, - , /,), (

abc * efg或者,使用任何其它操作者/括號像

*, - , /,), (

無效例子:

(123a + abc2 * 12ab/ab12) + ([email protected] + @a13 - %1a3 * a$13) 

123a + abc2 

abc2 * 12ab 

或者,使用任何其他操作符/大括號如*, +, - , /,), (

+0

這些看起來很像任意的例子。你是否想要檢測一個模式?你是否在尋找任何有超過一組數字/字母/特殊字符和長度爲4個字符的東西? – robrich

+0

[你有什麼想法](http://mattgemmell.com/2008/12/08/what-have-you-tried/) –

+2

請同時提供一些*否定的例子。你的正則表達式*不匹配哪個字符串? – Heinzi

回答

1

我認爲對於小例子來說,可能會生成一個正則表達式,但會很大並且很難理解。對於這個問題,你可以使用排序。對字符串進行排序並與原始字符進行比較,如果相等,則字符串具有連續字符(但要查找整個字符串的一小部分,則需要更智能的字符)。