我有如下字符串
201-Grandview-Dr_Early_TX_76802 和 /50-Washington-St
我正在写一个正则表达式匹配两个字符串.
((/^([0-9]+)-([^_]+)-([A-Za-z]{1,})$/ =~ data ) == 0)
Run Code Online (Sandbox Code Playgroud)
但上面的正则表达式只匹配50-Washington-St而不是第二个.
那么这个正则表达式可能有什么问题.
更新的字符串列表应该匹配:
201-Grandview-Dr_Early_TX_76802
/50-Washington-St
49220-Sunrose-Ln_Palm-Desert_CA_92260
201-Grandview-Dr_Early_TX_76802
50-Washington-St
Run Code Online (Sandbox Code Playgroud)
你可以修复正则表达式
/^\/?([0-9]+)-(.+?)-(\w+)$/
Run Code Online (Sandbox Code Playgroud)
或匹配整个字符串(请注意^匹配Ruby正则表达式中的行开头和$行结束):
/\A\/?([0-9]+)-(.+?)-(\w+)\z/
Run Code Online (Sandbox Code Playgroud)
请参阅Rubular演示
图案细节:
\A - 字符串开始\/? - 可选的 /([0-9]+) - 第1组:一个或多个数字- - 连字符 (.+?) - 第2组:除了换行符之外的一个或多个字符- - 连字符(\w+)- 第3组:一个或多个word([A-Za-z0-9_])字符\z - 字符串结尾.| 归档时间: |
|
| 查看次数: |
141 次 |
| 最近记录: |