【发布时间】:2017-03-28 04:20:15
【问题描述】:
我正在尝试添加一个检查样式,这将限制 android 字符串资源中的符号数量。我正在使用 RegexpSingleLine(也尝试使用 Regexp),并且已经有一个 regexp 表达式。现在的问题是它在字符串中的符号数在范围内时断言,但我需要在相反的情况下断言,当数字超出范围时。所以我需要以某种方式反转表达式(或者可能使用一些属性)。有人可以帮忙吗? 这是我的支票。
<module name="RegexpSingleline">
<property name="fileExtensions" value="xml"/>
<property name="format" value='^\s*<string\s*name="string_name">(.{5,10})<'/>
</module>
【问题讨论】:
-
试试
value='^\s*&lt;string\s*name="string_name"&gt;([^&lt;]{0,4}|[^&lt;]{11,})&lt;'。 -
感谢您的回复。我试过了,但现在它只接受一切:)
-
如果您从评论中复制/粘贴了正则表达式,它可能包含乱码。尝试从here
-
也许你需要匹配除了上面的模式之外的任何东西?试试
^(?!\s*&lt;string\s*name="string_name"&gt;.{5,10}&lt;).*。 -
您的正则表达式检查字符串长度是否为 0-4 或超过 11 个字符。那么你能检查一下它是不是 5-10 个字符? example
标签: android regex reverse checkstyle