Regex 搜索不带';不要从一行的开头开始
我只知道如何从一行的开头开始。但我想排除开头。 更具体一些 我想搜索“导入”这个词。但我不想要这样的东西:Regex 搜索不带';不要从一行的开头开始,regex,Regex,我只知道如何从一行的开头开始。但我想排除开头。 更具体一些 我想搜索“导入”这个词。但我不想要这样的东西: import java.util.*; 正如预期的那样,这不起作用:^用于排除线路起点 另外,在字符类中,^具有不同的含义,因此没有运气 那么什么是好方法呢?@AndyLester我还没有足够的代表对您的答案发表评论,但是它允许字符串以“import”开头,只要在同一字符串中再次找到import。使用.+允许除换行符以外的任何字符优先。。。包括字符序列“import”。因此,这取决于OP
import java.util.*;
正如预期的那样,这不起作用:^
用于排除线路起点
另外,在字符类中,^
具有不同的含义,因此没有运气
那么什么是好方法呢?@AndyLester我还没有足够的代表对您的答案发表评论,但是它允许字符串以“import”开头,只要在同一字符串中再次找到import。使用.+允许除换行符以外的任何字符优先。。。包括字符序列“import”。因此,这取决于OP想要确定的是“特性”还是“缺陷”@clankill3r优先于您的问题1)不以import开头,或2)在字符串中除开头以外的其他地方包含import 我认为你应该使用的是消极的前瞻-解释道 要使用正则表达式检查字符串是否以“import”开头,请执行以下操作:
^(?!导入)
要检查字符串是否不以“import”开头,而是包含“import”:
@AndyLester我还没有足够的代表对您的答案发表评论,但是它允许字符串以“import”开头,只要在同一字符串中再次找到import。使用.+允许除换行符以外的任何字符优先。。。包括字符序列“import”。因此,这取决于OP想要确定的是“特性”还是“缺陷”@clankill3r优先于您的问题1)不以import开头,或2)在字符串中除开头以外的其他地方包含import 我认为你应该使用的是消极的前瞻-解释道 要使用正则表达式检查字符串是否以“import”开头,请执行以下操作:
^(?!导入)
要检查字符串是否不以“import”开头,而是包含“import”:
上面写着“在行首找到我导入”
所以你想要的是任何带有“import”的行,但前面还有其他东西,对吗
^.+import
这表示“在行的开头找到我导入”
所以你想要的是任何带有“import”的行,但前面还有其他东西,对吗
^.+import
尝试此操作。这将找不到开头的import
。请参阅演示
尝试此操作。这将找不到开头的import
。请参阅演示
如果单词不是从一行的开头开始的,那不是意味着单词前面有一些字符,任何字符吗?你不能只做
myString=myString.substring(1)
。这将切断第一个字符。然后您可以进行搜索,因为该行现在将读取mport java.util.*
,它不应该匹配第一个import
@IceManin,我在文本编辑器中搜索,而不是用java。@WilliamPrice damn,我想复杂点:)正则表达式对我来说有点新。如果这个词不是从一行的开头开始的,那不是意味着有一些字符,任何字符,在单词之前?你不能只做myString=myString.substring(1)
。这将切断第一个字符。然后您可以进行搜索,因为该行现在将读取mport java.util.*
,它不应该匹配第一个导入的
@IceManin,我在文本编辑器中搜索,而不是用java。@WilliamPrice damn,我在想:)正则表达式对我来说是新的。
^.+import
(?!^)\bimport\b