gpt4 book ai didi

regex - 匹配文件中最后一个换行符的正则表达式

转载 作者:行者123 更新时间:2023-12-04 16:10:27 25 4
gpt4 key购买 nike

在我学习 flex 的过程中,我有一个扫描仪回显输入添加行号。

在每一行之后我都会显示一个计数器并递增它。

问题是在显示的末尾总是有一个单独的行号。

我需要一个正则表达式来忽略除最后一个换行符之外的所有换行符。

我试过了 [\n/<<EOF>>]无济于事。

有什么想法吗?

最佳答案

我不知道什么正则表达式引擎使用 Flex 但你可以使用这个正则表达式:

\z

Working demo

\z assert position at the very end of the string.

Matches the end of a string only. Unlike $, this is not affected by multiline mode, and, in contrast to \Z, will not match before a trailing newline at the end of a string.

enter image description here

如果上面的正则表达式不起作用,那么你可以使用这个:

(?<=[\S\s])$

Working demo

编辑:由于 flex 的工作方式似乎与其他正则表达式引擎略有不同,您可以使用此正则表达式:

[\s\S]$

获取每一行的最新字符。然后你可以遍历所有行直到得到最后一行。这里有一个在线 flex 正则表达式引擎工具:

http://ryanswanson.com/regexp/#start

enter image description here

关于regex - 匹配文件中最后一个换行符的正则表达式,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/25586754/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com