词库吧 关注:48贴子:139

关于使用正则表达式进行数据处理的问题

只看楼主收藏回复

汇总帖,记录一些常见的错误。


IP属地:河南来自iPhone客户端1楼2022-10-13 21:52回复
    首先打开查找替换框,想好自己要进行处理的数据


    IP属地:河南来自iPhone客户端2楼2022-10-13 21:53
    回复
      2025-05-14 23:58:51
      广告
      这里有一个坑就来了,经常遇到的问题是,进行正则表达式查找,但是却没有选择这个选项,那就导致根本查找不到要处理的文本。所以使用正则表达式,我们一定要把它和普通的查找替换文本区分开来,务必记得勾选这个选项。


      IP属地:河南来自iPhone客户端3楼2022-10-13 21:55
      回复
        第二个坑,有关字符转义的问题。很多时候我们查字符串查不到的时候,多半就是里面存在字符没有用\进行转义,所以出现问题的时候可以用这个角度检查一下。


        IP属地:河南来自iPhone客户端5楼2022-10-19 12:31
        回复
          第三个坑,是不是限定搜索当前选区了?如果查不到,可能是这个勾选了,把它关掉就可以了。


          IP属地:河南来自iPhone客户端6楼2022-10-19 12:38
          回复
            第四个坑,和字符转义有点类似,也是写代码常见的问题,是不是全角半角混用了?有时候一个符号弄错,导致工作卡住。所以这个也是排查问题原因的角度。


            IP属地:河南来自iPhone客户端7楼2022-10-19 12:40
            回复
              第四个坑,有关区分大小写字符。很多软件默认是不勾选的。如果你勾选了,可能很多检索不到。当然,勾选了也有特定的用途,比如只查找大写的情形。


              IP属地:河南来自iPhone客户端8楼2022-10-19 12:45
              回复
                上面说错了,上面是第五个。


                IP属地:河南来自iPhone客户端9楼2022-10-20 16:57
                收起回复
                  2025-05-14 23:52:51
                  广告
                  我们来学习一些常见的表示规则。


                  IP属地:河南来自iPhone客户端10楼2022-10-20 16:57
                  回复
                    学习正则表达式的最好⽅法是从例⼦开始,理解例⼦之后再⾃⼰对例⼦进⾏修改,实验。下⾯给出了不少简单的例⼦,并对它们作了详细的说明。


                    IP属地:河南来自iPhone客户端11楼2022-10-20 16:59
                    回复
                      假设你在⼀篇英⽂⼩说⾥查找 hi ,你可以使⽤正则表达式 hi 。
                      这⼏乎是最简单的正则表达式了,它可以精确匹配这样的字符串: 由两个字符组成,前⼀个字符是h, 后⼀个是i 。通常,处理正则表达式的⼯具会提供⼀个忽略⼤⼩写的选项,如果选中了这个选项,它可以 匹配 hi , HI , Hi , hI 这四种情况中的任意⼀种。


                      IP属地:河南来自iPhone客户端12楼2022-10-20 17:00
                      回复
                        不幸的是,很多单词⾥包含 hi 这两个连续的字符,⽐如 him , history , high 等等。⽤ hi 来查找的话, 这⾥边的 hi 也会被找出来。如果要 精确地查找hi这个单词 的话,我们应该使⽤ \bhi\b 。
                        \b 是正则表达式规定的⼀个特殊代码(好吧,某些⼈叫它 元字符,metacharacter ),代表着 单词 的开头或结尾,也就是单词的分界处 。虽然通常英⽂的单词是由空格,标点符号或者换⾏来分隔的,但 是 \b 并不匹配这些单词分隔字符中的任何⼀个,它只匹配⼀个位置。


                        IP属地:河南来自iPhone客户端13楼2022-10-20 17:01
                        回复
                          只代表一个位置的,还有别的,比如$ ^


                          IP属地:河南来自iPhone客户端14楼2022-10-21 11:09
                          回复
                            只代表一个位置的,还有别的,比如$ ^


                            IP属地:河南来自iPhone客户端15楼2022-10-21 11:10
                            回复
                              2025-05-14 23:46:51
                              广告
                              代表位置,就是不匹配任意字符,需要注意,如果替换的时候,替换结果不需要写这个位置


                              IP属地:河南来自iPhone客户端16楼2022-10-21 11:12
                              回复