weixin_39681229
weixin_39681229
采纳率0%
2017-07-31 14:25 阅读 1.8k

正则表达式匹配空行前的所有东西?

用的python的re,有一段文本, 我想匹配第一个\n\n之前的所有东西,包括\n包括文字。试了很多方法不是全部删掉,就是只删了\n\n的上一行

  • 点赞
  • 写回答
  • 关注问题
  • 收藏
  • 复制链接分享

4条回答 默认 最新

  • huasa2239635117 huasa2239635117 2017-08-01 01:41
      string pattern = txtBiaoDaShi.Text;
    
                    pattern = "(\n\n)";
                    Regex reg = new Regex(pattern);
    
    
                    string input = "hello1" + "\n" + "hello2" + "\n\n" + "word";
    
                    bool d = reg.IsMatch(input);
                    if (reg.IsMatch(input))
                    {
                        var t = reg.Matches(input);
    
                        Match oneMatch = reg.Match(input);
                        int index = oneMatch.Index;
                        var tt = input.Substring(0, index);
    
                    }
    

    tt的结果是:hello1\nhello2

    点赞 评论 复制链接分享
  • a350062174 a350062174 2017-08-01 02:00

    .* 匹配不到\n ,要使用[\s\S]*

     import re
    
    a="""123
    123
    123
    
    333
    333
    """
    
    p=re.compile("([\s\S]*?)\n\n")
    m=p.match(a)
    
    print(m.group(1))
    
    点赞 评论 复制链接分享
  • huasa2239635117 huasa2239635117 2017-08-01 02:25

    审题不认真,没看到是python

     import re
    pattern='(\n\n)'
    tt = "hello1" + "\n" + "hello2" + "\n\n" + "word"
    result=re.search(pattern,tt)
    print(result)
    

    这是语句,另外贴个网址:http://www.cnblogs.com/tina-python/p/5508402.html
    这个是我搜索的一个网页,我觉得写的很好你可以看看,不过他用的不知道是python哪个版本,有些语句可能不一样。

    以下是运行结果

    <br>
图片说明

    点赞 评论 复制链接分享
  • qq_39321513 静静_jingjing 2020-12-30 11:17

     虽然提问的时间比较久远了 但是我试出来了 还是希望帮助到后面搜这个题的人

    先造一个串

    # -*- coding: UTF-8 -*-
    import re
    txt = 'hello\nhello2\n\nhello3'
    print(txt)

    匹配\n\n前面的所有内容

    注意使用re.S(匹配包括换行在内的所有字符)   re.search()的作用是:扫描整个字符串并返回第一个成功的匹配

    # -*- coding: UTF-8 -*-
    import re
    txt = 'hello\nhello2\n\nhello3'
    content = re.search(r'(.*)\n\n',txt,re.S).group(1)
    print(content)

     这是结果

    如果匹配\n\n后面的所有内容

    # -*- coding: UTF-8 -*-
    import re
    txt = 'hello\nhello2\n\nhello3'
    content = re.search(r'\n\n(.*)',txt,re.S).group(1)
    print(content)

    结果

    点赞 评论 复制链接分享

相关推荐