匹配同一行中分号后字符的正则表达式
RegEx that matches characters after semicolon in the same line
我需要一些有关正则表达式的帮助。我需要一个与字符匹配的正则表达式,如果它们在分号之后并且在前一个单词的同一行中。
让我解释一下:
我需要这样的东西。我必须创建一个 不允许在同一行的分号后引入字符的函数 ,我想我可以用这种 RegEx 来完成。
谢谢。
我不确定我是否理解您的问题,但这样的事情会有帮助吗?
This regular expression
如果我没理解错的话
(?<=;)[A-Za-z]+
可能会做你的工作。
python 文档很有帮助:https://docs.python.org/3/library/re.html
好吧,你有两种方法可以做到:
A: 创建一个正则表达式来验证正确的输入。
B: 创建一个正则表达式来查找不正确的输入。
我会使用选项 1,但这取决于您需要做什么。
A:用于验证正确行的正则表达式
在这种情况下,我们将使用 m
修饰符将正则表达式引擎设置为按行搜索(m = 多行)。这意味着 ^
匹配行的开头,而 $
匹配行的结尾。
然后我们要匹配一些不是分号本身的字符。为此,我们使用 [^ ]
组,意思是“不在提供的字符列表中的任何内容”。所以要说除分号之外的任何字符,我们必须使用 [^;]
.
现在,这个 char 并不孤单,因为他们可能是很多人。为此,我们可以使用 *
或 +
运算符,它们分别表示“0 次或多次”和“1 次或多次”。如果分号前的数据是必需的,那么我们将使用 +
运算符。这导致 [^;]+
说任何不是分号的字符 1 次或多次。
然后我们将使用 ()
运算符捕获它。这将使我们能够直接访问该值,而无需自行截断并删除分号。
在这次捕获之后,我们有分号,然后可能有一些空的 spaces 或没有,然后是行尾。之后的 space 秒,由您决定。说任何类型的 space、制表符或空白字符 0 次或 n 次都是 \s*
。
最后我们得到这个正则表达式:^([^;]+);\s*$
带有 m
和 g
标志
m
用于多行,g
用于全局,这意味着不要在第一个匹配项处停止,而是查找所有匹配项。
在这里测试:https://regex101.com/r/sT59eu/1/
B:查找无效行的正则表达式
好吧,这也很简单:;.+$
.
表示任何字符。所以在这里我们会找到分号后面有东西的行。
在这里测试:https://regex101.com/r/ocDofm/1/
但是您不会找到缺少分号的行!
我需要一些有关正则表达式的帮助。我需要一个与字符匹配的正则表达式,如果它们在分号之后并且在前一个单词的同一行中。
让我解释一下:
我需要这样的东西。我必须创建一个 不允许在同一行的分号后引入字符的函数 ,我想我可以用这种 RegEx 来完成。
谢谢。
我不确定我是否理解您的问题,但这样的事情会有帮助吗? This regular expression
如果我没理解错的话 (?<=;)[A-Za-z]+ 可能会做你的工作。 python 文档很有帮助:https://docs.python.org/3/library/re.html
好吧,你有两种方法可以做到:
A: 创建一个正则表达式来验证正确的输入。
B: 创建一个正则表达式来查找不正确的输入。
我会使用选项 1,但这取决于您需要做什么。
A:用于验证正确行的正则表达式
在这种情况下,我们将使用 m
修饰符将正则表达式引擎设置为按行搜索(m = 多行)。这意味着 ^
匹配行的开头,而 $
匹配行的结尾。
然后我们要匹配一些不是分号本身的字符。为此,我们使用 [^ ]
组,意思是“不在提供的字符列表中的任何内容”。所以要说除分号之外的任何字符,我们必须使用 [^;]
.
现在,这个 char 并不孤单,因为他们可能是很多人。为此,我们可以使用 *
或 +
运算符,它们分别表示“0 次或多次”和“1 次或多次”。如果分号前的数据是必需的,那么我们将使用 +
运算符。这导致 [^;]+
说任何不是分号的字符 1 次或多次。
然后我们将使用 ()
运算符捕获它。这将使我们能够直接访问该值,而无需自行截断并删除分号。
在这次捕获之后,我们有分号,然后可能有一些空的 spaces 或没有,然后是行尾。之后的 space 秒,由您决定。说任何类型的 space、制表符或空白字符 0 次或 n 次都是 \s*
。
最后我们得到这个正则表达式:^([^;]+);\s*$
带有 m
和 g
标志
m
用于多行,g
用于全局,这意味着不要在第一个匹配项处停止,而是查找所有匹配项。
在这里测试:https://regex101.com/r/sT59eu/1/
B:查找无效行的正则表达式
好吧,这也很简单:;.+$
.
表示任何字符。所以在这里我们会找到分号后面有东西的行。
在这里测试:https://regex101.com/r/ocDofm/1/
但是您不会找到缺少分号的行!