求匹配「前缀字符串 (括号内长度≥3的字符串)」的正则表达式
正则表达式优化:要求括号内内容长度至少3位
你需要的正则可以调整为:
/^.*\([^()]{3,}\).*$/g
拆解说明:
^.*: 匹配字符串开头到左括号前的任意内容(包括空内容)\(: 匹配左括号(必须转义,因为括号是正则元字符)[^()]{3,}: 匹配不包含括号的任意字符至少3次,既满足长度要求,又避免括号嵌套的无效情况\): 匹配右括号.*$: 匹配右括号到字符串结尾的任意内容(包括空内容)g: 全局匹配标记(如果需要匹配多行或多个实例则保留,单实例匹配可去掉)
匹配/不匹配示例:
- ✅ 匹配:
United Kingdom (English)、Belgium (Dutch)、Japan (Japanese) - ❌ 不匹配:
China (Zh)(括号内仅2字符)、Australia ()(括号内为空)、India (Hi)(长度不足)
如果你的场景允许括号内出现嵌套括号(虽然你的示例里没有这种情况),可以把[^()]换成.,即:
/^.*\(.{3,}\).*$/g
内容的提问来源于stack exchange,提问作者gouravm
相关产品推荐
相关产品推荐

