日期:2014-05-18  浏览次数:21053 次

{急}正则表达试问题(高手请进,菜鸟也请进)!!!!
我要匹配下面这样的字符串

3             S         WDARS1     SYS1.IBM.PARMLIB

恳请大家帮忙!!

------解决方案--------------------
那其实这样写就可以的

^\s*(\w+\s+){3}[\w.]+\s*$

按规则,稍严格点的,这样

^\s*[0-9]+\s+[a-zA-Z]+\s+[0-9a-zA-Z]+\s+[0-9a-zA-Z.]+\s*$


不过看你的程序,没必要这样麻烦的,直接提取不好吗
------解决方案--------------------
没说规则
3 S WDARS1 SYS1.IBM.PARMLIB

3: 一定是数字?可以为几位?
S: 一定是一个字母?固定为”S“?
WDARS1: 字符个数固定?
SYS1.IBM.PARMLIB : 中间有点数固定?

楼主你不给出规则别人又怎么帮你写些严格点的正规呢
写些简单的可以匹配你给出的例子,但不一定匹配其他例子,
到头来只是害了你
------解决方案--------------------


^(\w\s{1,})(\w\s{1,})(\w\s{1,})(.*)$