首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >REGEX用于查找与任何空格、特殊字符加上单个空白加上除例外情况外的任何内容的匹配:

REGEX用于查找与任何空格、特殊字符加上单个空白加上除例外情况外的任何内容的匹配:
EN

Stack Overflow用户
提问于 2022-01-12 20:46:52
回答 1查看 101关注 0票数 1

简介:

我希望在Javascript中为Vue i18n本地化设置一个代码障碍。

详细信息:

使用逐行读取Vue文件,我希望找到一个使用REGEX (我正在寻找的许多模式中)的模式,其故事如下:

一根绳子, 查找任意数量的空格(空格或缩进) 加号 正好一个结束括号 加号 正好有一个空间(目前,这可能会改变) 再加上(棘手的部分,和我一起裸露) 任何数量的字符、数字或特殊字符,除了{{$t('anything‘}}或{ $t('anything’‘}})或如果在结束括号后没有任何字符,则该行将无法匹配模式。

代码语言:javascript
复制
1 |     )
2 |                     )
3 |  ) {
4 |      ) {{
5 |          ) Cancel
6 |        ) .[];\`\'.;l][
7 |             ) {{ $t('common.cancel') }}
8 |           ) {{$t('common.cancel')}}

第1-2行和第7-8行不应该匹配。只有第3-6行应该匹配。

尝试解决办法:

到目前为止,我的REGEX模式是这样的:\s+\)\s{1}(.*)不匹配第1行和第2行(好东西),因为在结束括号后缺少一个空格。

问题:

它允许第7和第8行通过。我不知道如何说任何东西是被允许的,但在故事中提到的三种例外情况,我正在努力实现。

我的大脑现在:

考虑到初始步骤,我想在单个空白部分之后否定一个{。如果我尝试\s+\)\s{1}(.*)[^\{],则not块将从传递匹配时用一个开口的曲括号否定任何行。但事实并非如此,因为我假设(.*)部分使否定块变得无用。看上去都没办法迈出这婴儿的一步。请帮帮忙。

EN

回答 1

Stack Overflow用户

发布于 2022-01-13 17:02:34

按照您的要求,我提出了以下模式:

代码语言:javascript
复制
^\s+\)\s(?!.*{{ ?\$t\('[^']*'\) ?}}).+$

它使用的是普通的“除了.”方法(这里 & 这里),在前面和结尾加上额外的位。

在线测试

票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/70688191

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档