Regex 使用正则表达式匹配自定义公式

Regex 使用正则表达式匹配自定义公式,regex,formula,Regex,Formula,我正在尝试使用正则表达式匹配公式 公式应严格仅包含这三个字母(L、W、H) 应仅允许产品操作,即(长*宽*高、长*宽、长*高等)。 另外,它应该允许一些东西,而不是添加平方值 像这样(L*L*L*W*W*H*H) 此外,它不应允许在末尾使用星号符号 我自己试了试,想出了这个 ^([L|W|H]\*{0,1})?(([L|W|H]\*{0,1}){0,9})?([L|W|H]{0,1})$ 但这允许连续添加字母,例如“LLL*WW*HHH**”。请帮帮我,伙计们 看起来你想要这个: ^[LWH]

我正在尝试使用正则表达式匹配公式

  • 公式应严格仅包含这三个字母(L、W、H)
  • 应仅允许产品操作,即
    (长*宽*高、长*宽、长*高等)。
  • 另外,它应该允许一些东西,而不是添加平方值 像这样
    (L*L*L*W*W*H*H)
  • 此外,它不应允许在末尾使用星号符号
  • 我自己试了试,想出了这个

    ^([L|W|H]\*{0,1})?(([L|W|H]\*{0,1}){0,9})?([L|W|H]{0,1})$
    

    但这允许连续添加字母,例如
    “LLL*WW*HHH**”
    。请帮帮我,伙计们

    看起来你想要这个:

    ^[LWH](\*[LWH])*$

    说明:

    • ^
      字符串的开头
    • [LWH]
      L、W、H中的一个
    • (\*[LWH])*
      (一个文本
      *
      ,后跟L、W、H中的一个)任意次数
    • $
      字符串的结尾

    您似乎想要这样:

    ^[LWH](\*[LWH])*$

    说明:

    • ^
      字符串的开头
    • [LWH]
      L、W、H中的一个
    • (\*[LWH])*
      (一个文本
      *
      ,后跟L、W、H中的一个)任意次数
    • $
      字符串的结尾