将Javascript RegExp转换为与Grep或Sed一起工作
Convert Javascript RegExp to work with Grep or Sed
我需要在服务器上grep一些文件,所以我很快就在javascript控制台上测试了一个regexp来满足我的需求:
var regexp = /mssql_query's*'(['"''][a-z0-9_'s]*(_sp|usp_)/i
// want to pass
regexp.test('mssql_query ("something_sp')
regexp.test('mssql_query("exec something_sp')
regexp.test("mssql_query('something_else_sp")
regexp.test('mssql_query("_usp_sp')
regexp.test('mssql_query ("_usp_somethig')
regexp.test("mssql_query('_usp_something_else")
// want to fail
regexp.test('mssql_query ("something_s')
regexp.test('mssql_query("exec something_p')
regexp.test('mssql_query("select')
表达式对于我所使用的所有测试用例都可以完美地工作,但是我似乎无法让表达式与grep一起工作。是否有方法将EMCA表达式转换为ERE或BRE表达式,以便我可以将其与grep或sed一起使用?
我试过调整它在grep中工作,但都失败了。
使用egrep (grep -E的别名,使用扩展正则表达式)
也可以使用-i标志代替/i修饰符
grep "mssql_query *(['"''][a-z0-9_ ]*_sp'|usp_"
应该做这项工作。它正在寻找:
- mssql_query,那么
- 0或更多空格(这是
" *"
),然后 - (,然后" or "(这是
(['"'']
),然后 - 0个或多个字符,包括小写字母、数字、下划线或空格(即
[a-z0-9_ ]*
),然后 - _sp或usp_(即
_sp'|usp_
)
相关文章:
- 转义符不能与innerHTML一起使用
- 高亮显示与数组字符串一起使用时文本插件中断
- setTimeout可以与闭包内的函数一起使用吗
- 将依赖外部库的UMD模块与browserfy捆绑在一起
- Highcharts colorsByPoint与系列中的线性渐变一起使用时不起作用
- 如何将js库与typescript一起使用
- 将webpack和babel与父项目目录中的文件一起使用
- 将 Drag&Drop 与 jsTree 和 DataTables 一起使用
- Javascript-如何让脚本与Ajax请求的数据一起运行
- 将两个ext.TabPanels滚动到一起
- 将jQuery UI Timepicker Addon与React一起使用
- 什么是curl以及如何将其与nodejs一起使用
- Javascript”;onmousemove”;事件无法与类一起使用
- 将require('..')与变量一起使用与在webpack中使用字符串相比
- 如何在php中创建一个函数,该函数与文本区域一起工作,通过输入类似[color:red]的内容来打印具有等效颜色的文本
- 三角库可以与firefox一起使用,但不能在Chrome中使用
- 为什么不't我的ruby代码与javascript文件一起插入
- 通过jQueryAjax一起发布Array和Form数据时出现问题
- 如何将eventListeners与Angularjs+Electron一起使用
- 将Javascript RegExp转换为与Grep或Sed一起工作