当前位置: 首页 > 编程笔记 >

Python中的正则表达式,用于在以大写字母开头的单词之间放置空格

宣星光
2023-03-14
本文向大家介绍Python中的正则表达式,用于在以大写字母开头的单词之间放置空格,包括了Python中的正则表达式,用于在以大写字母开头的单词之间放置空格的使用技巧和注意事项,需要的朋友参考一下

我们在这里试图解决的问题是将CamelCase转换为单独的单词。我们可以使用正则表达式直接解决此问题,方法是查找给定字符串中所有出现的大写字母,并在其前面放置一个空格。我们可以使用re模块中的sub方法。

例如,对于输入字符串-

AReallyLongVariableNameInJava

我们应该得到输出-

A Really Long Variable Name In Java

我们可以使用“ [AZ]”正则表达式查找所有大写字母,然后将它们替换为空格和该字母。我们可以使用re包实现它,如下所示:

示例

import re

# Find and capture all capital letters in a group and make that replacement
# using the \1 preceded by a space. Strip the string to remove preceding
# space before first letter.
separated_str = re.sub("([A-Z])", " \\1", "AReallyLongVariableNameInJava").strip()
print(separated_str)

输出结果

这将给出输出-

A Really Long Variable Name In Java
 类似资料:
  • 问题内容: 我有一组不同语言的单词(英语,波兰语,芬兰语,俄语等),需要检查一下,用大写字母写的是什么。 我尝试使用简单的正则表达式:,但仅匹配拉丁字母,然后添加了俄语大写字母:。 但是,许多 带有变音符号的unicode字母 仍然存在。如何将 所有 大写字母添加到正则表达式中? 可以不使用符号枚举就可以做到这一点吗? PS我知道,如何在Ruby中做到这一点,但现在我正在使用Python。 问题答

  • 我需要找到在字符串中出现字母a-z的小写单词的索引。但是,字符串中可能有一堆非字母字符。 例如,单词“don't”跨越短语“don't that”中的索引 [0, 5)。 我四处搜索匹配非字母字符的方法,并使用以下正则表达式实现了这一点: 有没有更简洁的方法来表达这个正则表达式?或者,我必须编写代码在要搜索的每个单词的每个字符之间插入[^a-z]*? 对不起,如果这个问题已经存在-我不知道如何准确

  • 我需要一个正则表达式来匹配以$开头的整个单词。表达式是什么,如何进行测试? 例子: 应提取此$word和$This。 在上面的句子中,可以找到和。

  • 我对正则表达式模式非常陌生。我正在开发一个接受用户值(状态)的api,基于状态它将执行过滤操作,直到它工作正常。 现在,我的要求是,我希望根据以下条件接受: > 如果字符串包含多个单词,则应仅用分隔,而不能用其他符号(/)分隔。 允许使用大写和小写字母。 有效的方案: 准备发送 无效场景: > 准备好发送了吗 准备调度

  • 尝试使用正则表达式识别文本数据的结构并遇到障碍。 对于下面的示例文本 Lorem Ipsum只是印刷和排版行业的虚拟文本。自16世纪以来,Lorem Ipsum一直是业界的标准虚拟文本。 我是一个标签-Lorem Ipsum只是打印的虚拟文本 下面的正则表达式选择I AM A HEADER:和I AM A TAB- 请建议进行编辑,以匹配“我是标题”和“我是标签”,并忽略结尾标记“:”和“-”。