android - 特定字符开始和结束的正则表达式

标签 android regex string

我正在为以 T 开头并以 A 结尾的单词编写正则表达式。

我写:-

^T\..*A$

但现在我想排除单词 TEA。如何使用正则表达式排除特定单词。

最佳答案

您的 ^T\..*A$ 正则表达式匹配以 T. 开头的字符串,然后有除换行符以外的任何 0+ 个字符(带有 .*) 然后以 A.

结尾

要匹配任何以 T 开头并以 A 结尾且不等于 TEA 的字符串,您可以使用

(?s)^(?!TEA$)T.*A$

要使其不区分大小写,请添加 i 修饰符:

(?si)^(?!TEA$)T.*A$

参见 regex demo .

详情

  • (?si) - DOTALL (s) 修饰符允许 . 匹配任何字符和 IGNORECASE (i) 使模式不区分大小写的修饰符
  • ^ - 字符串的开始
  • (?!TEA$) - negative lookahead如果整个字符串等于 TEA
  • ,则匹配失败
  • T - T
  • .* - 0+ 个字符,尽可能多
  • A - A 字母
  • $ - 字符串结尾。

请注意,如果您在 matches() 方法中使用它,则可以删除第一个 ^ 和最后一个 $

关于android - 特定字符开始和结束的正则表达式,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/47700784/

相关文章:

javascript - '2' +'2' -'2' = 20 在 JavaScript 中是如何实现的?

javascript - 使用 WebView 获取 android 的 JavaScript 值

android - 如何在 DOS 提示符下将 android 的 logcat 保存在文本文件中?

mysql - 如何将 REGEXP 与字边界等转义序列一起使用?

javascript - 用于匹配从左到右和从右到左语言的主题标签的正则表达式

python - 如何从正则表达式类中获取可匹配字符列表

java - 如何在 libgdx 中访问点击监听器中的其他元素

android - 如何处理 "last block incomplete in decryption"

java - 正则表达式字符串中的多个IP地址

c++ - 重载 < 运算符 C++