teleport01 2008-12-17 16:49
浏览 175
已采纳

以下正则表达式换成js的表达式格式该怎么写?

以下都是我在Java中运行的正则表达式,但放在js上面格式有点问题,请哪位朋友帮我改改格式。
表达式1:^\d+\-\d+$
表达式2:^\d+\-\d+,\d[\d,]+$
表达式3:^\d+\+\d+[\d\+]+$

  • 写回答

1条回答 默认 最新

  • rednaxelafx 2008-12-17 17:19
    关注

    不用到某些字符组的交/并集、逆序环视(lookbehind)之类的话,JavaScript的正则表达式跟Java的很相似,基本上都是Perl-compatible的。

    主要是Java里正则表达式没有专用的表示方式,必须用字符串来表示;而Java的字符串中斜杠('\')是转义字符,同时在正则表达式里斜杠也是转义字符。这就导致Java里使用转义字符特别麻烦。本来在Perl-compatible的表示方式里这样的正则表达式:
    [code="js"]/\d+/[/code]
    在Java里就必须写成:
    [code="java"]Pattern.compile("\d+")[/code]
    也就是说本来在Perl-compatible的记法里正则表达式用到了转义字符的地方,在Java字符串里都必须把一个斜杠写成两个斜杠。
    换句话说,问题里的正则表达式基本上只要把两个斜杠换成一个斜杠就行了。

    另外,/[\d+]/跟/[\d+]/是一样的……Java里的话就是说"[\d\+]"跟"[\d+]"是一样的。方括号里很多元字符都不再是元字符,而变回普通字符了,包括点('.')、加号('+')、问号('?')、星号('*')等许多。

    关于JavaScript的正则表达式,稍微做了点笔记,在这里:[url]http://rednaxelafx.iteye.com/blog/171476[/url]

    本回答被题主选为最佳回答 , 对您是否有帮助呢?
    评论

报告相同问题?

悬赏问题

  • ¥15 有赏,i卡绘世画不出
  • ¥15 如何用stata画出文献中常见的安慰剂检验图
  • ¥15 c语言链表结构体数据插入
  • ¥40 使用MATLAB解答线性代数问题
  • ¥15 COCOS的问题COCOS的问题
  • ¥15 FPGA-SRIO初始化失败
  • ¥15 MapReduce实现倒排索引失败
  • ¥15 ZABBIX6.0L连接数据库报错,如何解决?(操作系统-centos)
  • ¥15 找一位技术过硬的游戏pj程序员
  • ¥15 matlab生成电测深三层曲线模型代码