繁体   English   中英

正则表达式避免 {{ 和 }} 之间的所有单词

[英]Regex to avoid all words between {{ and }}

我正在使用https://github.com/tbroadley/spellchecker-cli

我有一个 JSON 文件,我想在它上面运行拼写检查器,它看起来像这样:

{
  "abc.editGroupsMaxLengthError": "Maximum {{charLen}} characters"
}

我想知道拼写检查器如何忽略{{}}之间的所有单词。

我试过

[A-Za-z]+}}

如此处所述https://github.com/tbroadley/spellchecker-cli#ignore-regexes忽略正则表达式。

但由于某种原因,它似乎没有使用}}{{

如何解决这个问题?

你可以用<!-- spellchecker-disable --> / <!-- spellchecker-enable -->标签包裹你的{{...}}子字符串,参见这个 Github 问题

所以,确保你的 JSON 看起来像

{
  "abc.editGroupsMaxLengthError": "Maximum <!-- spellchecker-disable -->{{charLen}}<!-- spellchecker-enable --> characters"
}

结果将是

C:\Users\admin\Documents\1>spellchecker spellchecker -f spellchecker_test.json
Spellchecking 1 file...

spellchecker_test.json: no issues found

要将{{...}}字符串包装在 Windows 中的某个文件中,您可以使用 PowerShell,例如,用于spellchecker_test.json文件:

powershell -Command "& {(Get-Content spellchecker_test.json -Raw) -replace '(?s){{.*?}}','<!-- spellchecker-disable -->$&<!-- spellchecker-enable -->' | Set-Content spellchecker_test.json}"

在 *nix 中,最好使用 Perl:

perl -0777 -i -pe 's/\{\{.*?}}/<!-- spellchecker-disable -->$&<!-- spellchecker-enable -->/s' spellchecker_test.json

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM