doumaikuang4202 2017-05-01 17:57
浏览 582
已采纳

进行正则表达式以匹配所有不以时间戳开头的行

Can anybody explain what the correct Java regex is to match all lines that don't start with timestamp [0-9]{4}-[0-9]{2}-[0-9]{2}?

I am trying to use ^(^[0-9]{4}-[0-9]{2}-[0-9]{2}) but it doesn't work.

  • 写回答

1条回答 默认 最新

  • douju2014 2017-05-01 18:00
    关注

    Your ^(^[0-9]{4}-[0-9]{2}-[0-9]{2}) pattern matches a string starting with the pattern you defined (the ^ here just matches the start of a string).

    In Go lang, the regex engine does not support lookarounds, and thus it is difficult to create a readable regex that would do the required job.

    I suggest you remove all lines that match your pattern

    (?m)\s*^[0-9]{4}-[0-9]{2}-[0-9]{2}.*
    

    (see demo) and then split the result with line breaks to get the lines that did not match the pattern.

    本回答被题主选为最佳回答 , 对您是否有帮助呢?
    评论

报告相同问题?

悬赏问题

  • ¥100 Jenkins自动化部署—悬赏100元
  • ¥15 关于#python#的问题:求帮写python代码
  • ¥20 MATLAB画图图形出现上下震荡的线条
  • ¥15 关于#windows#的问题:怎么用WIN 11系统的电脑 克隆WIN NT3.51-4.0系统的硬盘
  • ¥15 perl MISA分析p3_in脚本出错
  • ¥15 k8s部署jupyterlab,jupyterlab保存不了文件
  • ¥15 ubuntu虚拟机打包apk错误
  • ¥199 rust编程架构设计的方案 有偿
  • ¥15 回答4f系统的像差计算
  • ¥15 java如何提取出pdf里的文字?