各位大佬,求一个正则。

w292614191 1月前 30

我正在开发一个前端的类 Excel 计算功能。

这是一个错误的公式,要得出“H4H4H4”、“J3J3J3J3”,可能有多个匹配。

=A1+M2-N2+H4H4H4+G7+H5/J3*PREXM('','','')

=A1+M2-N2+H4H4+G7+H5/J3J3J3J3*PREXM('','','')

正确的是这样的:

=A1+M2-N2+H4+G7+H5/J3*PREXM('','','')

最新回复 (12)
  • ccraohng 26天前
    引用 2
    假设规则是 去掉重复的 一个大写字母一个数字吧

    ```js
    g = /([A-Z]\d)\1+/g

    s = "A1+M2-N2N2+H4H4+G7+H5/J3J3J3J3*PREXM('','','')"

    s.replace(g, '$1')

    ```
  • skys215 26天前
    引用 3
    `([A-Z]\d){2,}` 就可以匹配到了吧?
  • Jeyfang 26天前
    引用 4
    2 楼的就可以
  • no1xsyzy 26天前
    引用 5
    如果是 H1H2H3H4 这种怎么办?

    是否有 AA1234 这种地址? [A-Z]\d 看上去不够
  • 楼主 w292614191 26天前
    引用 6
    @no1xsyzy #4
    @skys215 #2

    ganxi 感谢。看起来可行。
  • 楼主 w292614191 26天前
    引用 7
    @ccraohng #1 你这个也可,但是不能满足 4 楼提出的那种情况。非常感谢。
  • JeffGe 26天前
    引用 8
    .replace(/([A-Z]+\d+)\1+/g, '$1')
  • imlinhanchao 26天前
    引用 9
    我觉得你需要的是这个: https://www.npmjs.com/package/excel-formula-sdk
  • 楼主 w292614191 26天前
    引用 10
    @imlinhanchao #8 感谢,我们已有一个词法解析器,结合了自己的业务。
  • balabalaguguji 26天前
    引用 11
    工具测试下 https://tools.fun/regexp.html
  • youhuo 26天前
    引用 12
    2 楼不错
  • ditel 26天前
    引用 13
    感觉为了以后的方便,该这样比较好

    g = /([A-Z]+\d+)\1+/g
  • 游客
    14
返回