如何将其写为正则表达式?

问题描述

| 我有一段代码序列,需要能够快速在几个不同的文件中找到。它具有以下形式:
<?php
//{{56541616
其中8位数字可以是任何数字和字母序列。我想使用正则表达式来定位代码,但是我对它们仍然是陌生的,这很复杂,以至于使我不知所措。这是我为正则表达式想到的,但是它似乎不起作用。
\"<\\?/php/n//\\{\\{[:alnum:]{8}\"  
关于我做错了什么/实际正则表达式应该有什么建议? 更新:我无法获得任何答案来做我想要的事情。为了对我要执行的操作添加更多说明,有一段代码需要从几个文件中删除,以上序列是该代码的开头,需要删除。然后结束是类似的:
//}}18420732
?>
同样,8位代码可以是任何数字+字母序列。我正在尝试将awk与
 /<string1>/,/<string2>/ 
查找介于两者之间的线的范围。因此,例如,使用给出的答案之一和我对第二行的解释,我将其放入命令行中:
awk {/<\\?php\\n\\/\\/\\{\\{([:alnum:]{8})/,/\\/\\/\\}\\}([:alnum:]{8})\\n\\?/} index.php
我得到这个回应:
-bash: syntax error near unexpected token `(\'
这是我尝试过的结果的另一个示例。
awk /<\\?php\\n\\/\\/\\{\\{[:alnum:]{8}/,/\\/\\/\\}\\}[:alnum:]{8}\\n\\?>/ index.php
-bash: ?phpn//{{[:alnum:]{8}/,///}}[:alnum:]{8}n?/: No such file or directory
有什么建议么?     

解决方法

        尝试一下:
/<\\?php\\s*\\/{2}\\{\\{(\\w{8})/i
    ,        您的正则表达式:   \“ <\\?/ php / n // \\ {\\ {[:alum:] {8} \” 怎么了: 报价-大多数语言中的正则表达式必须以/字符而不是引号开头和结尾。 / PHP之前的不必要使用 在n之前使用/代替\\(用于匹配换行符) 不要转义文字中的/字符,因为这是一个特殊字符 解决方案: / <\\?php \\ n \\ / \\ / \\ {\\ {([:alnum:] {8})/ /字符已转义,n之前的斜杠已更正,并且括号包围\“ [:alnum:] {8} \”部分。这样做是为了使8位代码可以在变量$ 1中捕获,然后可以在代码中使用它。     ,        像这样:
<\\?php\\s\\/\\/\\{\\{[0-9]{8}
    

相关问答

依赖报错 idea导入项目后依赖报错,解决方案:https://blog....
错误1:代码生成器依赖和mybatis依赖冲突 启动项目时报错如下...
错误1:gradle项目控制台输出为乱码 # 解决方案:https://bl...
错误还原:在查询的过程中,传入的workType为0时,该条件不起...
报错如下,gcc版本太低 ^ server.c:5346:31: 错误:‘struct...