我在下面创建了一个正则表达式(使用php);其必须与包含的给定字符串中的全部terms
相匹配a-z0-9
,.
,_
和-
。正则表达式不起作用
我的表达是:'~(?:\(|\s{0,},\s{0,})([a-z0-9._-]+)(?:\s{0,},\s{0,}|\))$~i'
。
我的目标字符串是:('word', word.2, a_word, another-word)
。 在结果预计terms
是:word.2
,a_word
,another-word
。
我目前得到:another-word
。
我的目标
我检测从我的目标字符串MySQL的功能,能正常工作。然后我需要从该目标字符串中的所有字段。这是为我自己的ORM。
我想可能会出现这样一种情况,即在该表达式中包含进一步的括号。
提示:'{0,}'与'*'相同。 – deceze 2012-07-11 08:39:01
可以引用括号中的任何术语,或只引用第一个术语?可以有任意数量的引用条款吗?也许你可以向我们展示一些你的输入例子。 – Flimzy 2012-07-11 08:43:52
另外,你是否需要处理嵌套的括号?所有括号是否总是正确平衡?引用字符串中是否可以有括号?引用字符串中是否有(引号或其他)引号?如果你想要一个正则表达式来处理这个问题,你需要解决这些问题。 – 2012-07-11 08:45:23