dsns47611 2013-07-04 10:32
浏览 70
已采纳

正则表达式在分隔数后找到3个空格之间的数字?

i have a string with numbers and i have a pattern to match the string and getting specific numbers of this string.

202-715-1278 2 0.01% 0.30 0.00% $0.00 0.00%
202-715-1278 21 0.01% 0.30 0.00% $0.00 0.00%
202-715-1278 210 0.01% 0.30 0.00% $0.00 0.00%

pattern

\b[0-9]{3}\s*[-]\s*[0-9]{3}\s*[-]\s*[0-9]{4}|(?<!\$)\b[-+]?\d+\.\d+\b(?!%)|(\$\d+(?:\.\d+)?)\b

this pattern return the phone number the first float number which is 0.30 and the price .
what i need is to return the number between the 2 space after the phone number which is 2 , 21 or 210 in this example .

  • 写回答

5条回答 默认 最新

  • dqc42632 2013-07-04 10:38
    关注

    I find the regex you currently have a bit weird, since it seems that the values you're looking for can be anywhere in the string. Well, following the way the regex was written, you might use:

    \b[0-9]{3}\s*[-]\s*[0-9]{3}\s*[-]\s*[0-9]{4}|(?<!\$)\b[-+]?\d+\.\d+\b(?!%)|(\$\d+(?:\.\d+)?)\b|\b(?<!\$)(\d+)(?!%|\.)\b
    

    I added the bit: |\b(?<!\$)(\d+)(?!%|\.)\b by the way. A demo can be found here.

    本回答被题主选为最佳回答 , 对您是否有帮助呢?
    评论
查看更多回答(4条)

报告相同问题?

悬赏问题

  • ¥15 arduino控制ps2手柄一直报错
  • ¥15 使用rabbitMQ 消息队列作为url源进行多线程爬取时,总有几个url没有处理的问题。
  • ¥85 maple软件,solve求反函数,出现rootof怎么办?
  • ¥15 求chat4.0解答一道线性规划题,用lingo编程运行,第一问要求写出数学模型和lingo语言编程模型,第二问第三问解答就行,我的ddl要到了谁来求了
  • ¥15 Ubuntu在安装序列比对软件STAR时出现报错如何解决
  • ¥50 树莓派安卓APK系统签名
  • ¥65 汇编语言除法溢出问题
  • ¥15 Visual Studio问题
  • ¥20 求一个html代码,有偿
  • ¥100 关于使用MATLAB中copularnd函数的问题