用正则表达式将字符串中的小写转换成大写,大写转换成小写,整个字符串都变成大写或是小写,怎么实现啊?
英文教程中有\ETerminate\Lor\Uconversion\lConvertnextcharactertolowercase\LConvertallcharact...
英文教程中有
\E
Terminate \L or \U conversion
\l
Convert next character to lowercase
\L
Convert all characters up to \E to lowercase
\u
Convert next character to uppercase
\U
Convert all characters up to \E to uppercase
这几个方法,但是测试不出来效果啊?
例如
<H1>Welcome to my Homepage</H1>
正则表达式(<[Hh]1>)(.*?)(</[Hh]1>)
替换字符串$1\U$2\E$3
结果确是:<H1>\UWelcome to my Homepage\E</H1>
不知能否直接用正则表达式实现呢?不希望借助其他语言,要借助其他语言的话我就不用用正则表达式了 展开
\E
Terminate \L or \U conversion
\l
Convert next character to lowercase
\L
Convert all characters up to \E to lowercase
\u
Convert next character to uppercase
\U
Convert all characters up to \E to uppercase
这几个方法,但是测试不出来效果啊?
例如
<H1>Welcome to my Homepage</H1>
正则表达式(<[Hh]1>)(.*?)(</[Hh]1>)
替换字符串$1\U$2\E$3
结果确是:<H1>\UWelcome to my Homepage\E</H1>
不知能否直接用正则表达式实现呢?不希望借助其他语言,要借助其他语言的话我就不用用正则表达式了 展开
4个回答
展开全部
//全部转化为大写
$string = "<H1>Welcome to my Homepage</H1>";
$reg = '/(\w+)/e'; //使用/e修正符,使匹配的字符串作为 PHP 代码求值,可用于PHP函数,并用其结果来替换所搜索的字符串
$replacement = "strtoupper('\$1')";
print preg_replace($reg,$replacement,$string);
//全部转化为小写
$string = "<H1>Welcome to my Homepage</H1>";
$reg = '/(\w+)/e';
$replacement = "strtolower('\$1')";
print preg_replace($reg,$replacement,$string);
//小变大,大变小
$string = "<H1>Welcome to my Homepage</H1>";
$reg = '/([a-z]*)([A-Z]*)/e';
$replacement = "strtolower('\$2').strtoupper('\$1')";
print preg_replace($reg,$replacement,$string);
----------------
在perl中可以直接实现
\U,\L等等都只支持perl
$string = "<H1>Welcome to my Homepage</H1>";
$reg = '/(\w+)/e'; //使用/e修正符,使匹配的字符串作为 PHP 代码求值,可用于PHP函数,并用其结果来替换所搜索的字符串
$replacement = "strtoupper('\$1')";
print preg_replace($reg,$replacement,$string);
//全部转化为小写
$string = "<H1>Welcome to my Homepage</H1>";
$reg = '/(\w+)/e';
$replacement = "strtolower('\$1')";
print preg_replace($reg,$replacement,$string);
//小变大,大变小
$string = "<H1>Welcome to my Homepage</H1>";
$reg = '/([a-z]*)([A-Z]*)/e';
$replacement = "strtolower('\$2').strtoupper('\$1')";
print preg_replace($reg,$replacement,$string);
----------------
在perl中可以直接实现
\U,\L等等都只支持perl
本回答被网友采纳
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
展开全部
还真不知道哪个正则可以支持这个的, 正规的正则是不行的.
当然, VIM 里面正则是可以做到的.
但VIM里面的正则就不是那样写了, 和PERL正则差很多.
这里VIM里面把SPAN变大写的替换命令
%s/\(<span>\)/\U\1
里面\U 是和你说的一样的, 但这里不接受 $1, 而是 \1
当然, VIM 里面正则是可以做到的.
但VIM里面的正则就不是那样写了, 和PERL正则差很多.
这里VIM里面把SPAN变大写的替换命令
%s/\(<span>\)/\U\1
里面\U 是和你说的一样的, 但这里不接受 $1, 而是 \1
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
推荐律师服务:
若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询