Regex 正则表达式中的大写字母
我对正则表达式一无所知,但我需要将变量($name)转换为大写。 有人知道怎么做吗Regex 正则表达式中的大写字母,regex,perl,sublimetext2,Regex,Perl,Sublimetext2,我对正则表达式一无所知,但我需要将变量($name)转换为大写。 有人知道怎么做吗 另外,什么是学习正则表达式的好网站?你真的需要使用正则表达式吗?如果没有,请查看perltr///操作符文本板将允许您执行此操作 例如: test 查找内容:([^])(.)替换为:\U\1\E\2 结果将是: TEST 你可以试试 s/(\pL+)/\U$1/g 捕获参数将查找字母,\U将对$1中捕获的文本应用uc功能。/g修饰符将在整个字符串中重复匹配 对于更通用的正则表达式,您可以尝试 s/(.*
另外,什么是学习正则表达式的好网站?你真的需要使用正则表达式吗?如果没有,请查看perl
tr///
操作符文本板将允许您执行此操作
例如:
test
查找内容:([^])(.)替换为:\U\1\E\2
结果将是:
TEST
你可以试试
s/(\pL+)/\U$1/g
捕获参数将查找字母,\U
将对$1
中捕获的文本应用uc
功能。/g
修饰符将在整个字符串中重复匹配
对于更通用的正则表达式,您可以尝试
s/(.*)/\U\1/g
…其中它匹配所有字符,
\1
是旧式的捕获序列 你把整个字符串都改成大写了吗?如果是,就用“string.toUpperCase()(如果是JS)-你用的是什么语言?是的,整个字符串。我需要使用Perl正则表达式语法“我需要使用…”这是家庭作业还是什么?嗯,是你的权利,我根本不能使用Perl语法。我不应该提到Perl。这只是关于正则表达式正则表达式用于定义模式,所以它们是不够的。您需要找到替换匹配字符串的方法,这是您肯定有的。您还需要根据匹配的字符串有条件地替换匹配的字符串。这需要能够定义要执行的代码,以确定要用作替换字符串的字符串。ST2有这种能力吗?您询问如何转换变量(我认为您指的是它的值),因此我认为您可以使用某种编程语言(或者您没有变量),因此这可能是可能的。这就是我试图实现的目标,但不必编写“查找内容”和“替换为”。不使用“查找内容”和“替换为”?创建新文件时,通过“文件模板”“升华文本2中的扩展名,我想在中用大写版本替换$name#ifndef$name_H#define$name_H
。我尝试使用Find what and Replace with bu,但它不起作用。例如,sublime text 2中的一个片段如下所示:''似乎是个好主意,但我不能只使用Perl语法正则表达式。我提到了perl,但这只是因为sublime text 2网站提到了它。那是个错误。@Atha好吧,那是正则表达式s/(\pL+)/\U$1/g
。我不知道它是如何在崇高的文本中实现的。对于更通用的正则表达式,您可以尝试s/(.*)/\U\1/g
,其中它匹配所有字符,\1
是旧的捕获序列。谢谢!我想我会给sublime开发团队发电子邮件,让他们了解更多关于这个的信息。@Atha哪个regex为您工作过?也许可以添加到答案中。嗯,我看到您使用了\$name
而不是$name
,也许这与此有关。