admin/requirements/details/52/is_mobile=1
大神们,怎么从这串字符串里提取出52这个数字?
求正则替换表达式,比如替换成“foo/xxx/52”
details 参数 和 is_mobile 参数固定吗?
其它都是固定的,只有这个52是变的
@寞小陌:正则表达式 details/(\d+)/is_mobile
直接使用$1
就可以取到里面的数字
@BUTTERAPPLE:嗯,我试试
@BUTTERAPPLE: 大佬,能把代码贴一下吗,我好想,还是不会。。。。
好想懂你的$1是什么意思。。。
@寞小陌: ()
表示一个匹配,$1
就是取得括号中匹配的值,就是你所需要的数字。
@寞小陌: 用Javascript 实现的代码如下,你参考一下:
var str = "admin/requirements/details/52/is_mobile=1";
var patt = /details\/(\d+)\/is_mobile/
var result;
result = patt.exec(str);
alert(result[1])
@BUTTERAPPLE: 谢谢
请问要用用什么语言?
php 开发的,其实是想把数据库里这串字符串需要替换成别的,但是需要保留这个id
@寞小陌: php不会,但是也就是字符串分割就可以
@北方姆Q: 应该用不到php,应该可以直接在sql里修改
@北方姆Q: 不需要把数据取出来再修改,直接用sql把数据库里面的值修改掉
@寞小陌: 用正则的话,一楼的就可以了
按 "/" 拆分这个字符串得到字符串数组,取第四个元素。
首先不太靠谱,其次,我不想把数据取出来,想直接用sql把数据库里的值修改掉,想用正则替换,但是,正则学的不太好,。。。不会
String ss="admin/requirements/details/52/is_mobile=1";
int a = ss.indexOf("52");
String ns = ss.substring(a, a+2);
System.out.println(ns);