给定特定规则,如何将字符串中的特定字母大写

重新开始

我正在对字符串进行按摩,以使字符串的第一个字母和破折号或斜杠后的第一个字母大写。

所以下面的字符串:

测试/字符串-这是一个测试字符串

应该看起来像这样:

测试/字符串-这是一个测试字符串

因此,在尝试解决此问题时,我的第一个想法似乎是个坏主意-迭代字符串并检查每个字符并使用索引等。确定字符是否跟随破折号或斜杠(如果确实将其设置为上划线并写出给我)新字符串。

def correct_sentence_case(test_phrase):

corrected_test_phrase = ''

firstLetter = True

for char in test_phrase:

    if firstLetter:

        corrected_test_phrase += char.upper()

        firstLetter = False

    #elif char == '/':
    else:

        corrected_test_phrase += char

这似乎非常不合逻辑。什么是处理此问题的Python方法?

遵循以下内容的内容非常棒,但我不能同时使用破折号和斜杠:

corrected_test_phrase = ' - '.join(i.capitalize() for i in test_phrase.split(' - '))

这是我得到的:

在python中将大写字符串转换为句子大小写

任何帮助将不胜感激 :)

瓦巴达特

我能够使用正则表达式完成所需的转换:

import re
capitalized = re.sub(
    '(^|[-/])\s*([A-Za-z])', lambda match: match[0].upper(), phrase)

该表达式表示“在与字符串开头^、、破折号或斜杠,后跟一些空格和一个单词字符的任何位置匹配,请用大写字母替换单词字符。”

演示

本文收集自互联网,转载请注明来源。

如有侵权,请联系 [email protected] 删除。

编辑于
0

我来说两句

0 条评论
登录 后参与评论

相关文章

如何用Java中的特定规则对给定字符串进行子字符串化

在给定特定规则集的情况下如何拆分字符串?

根据特定规则测试字符串

为字符串 PHP 制定特定规则

如何将数据集与特定规则结合

如何将字符串中每个单词的首字母大写?

如何将字符串中每个单词的首字母大写

如何在Julia中使字符串的大写字母变为特定字母?

如何从iptables中删除特定规则?

如何禁用FSharpLint中的特定规则?

JS:如何将字符串中每个用符号分隔的单词的首字母大写?

从给定的字母数组中递增字符串,或者使用PHP从增量中排除特定字母

如何将所有大写字母移动到字符串的开头?

如何将小写和大写字母与字符串分开?

如何将字符串转换为以大写字母开头

如何获取所有在特定字符串之后以大写字母开头的单词?

如何将字符串打印为特定字符?

如何将用户输入与列表中的大写字母字符串进行比较?

如何将可能包含数字的字符串中的首字母大写

替换字符串中的特定字母

计算字符串中的特定字母

将字符串中的所有字母大写

将字符串中的各个字母大写

将字符串中的每个其他字母大写

将数组中的字符串的首字母大写

解析给定字符串中的特定字符串

如何将字符添加到字符串中的特定索引

如何将特定数量的字符放在pl / sql中的字符串前面?

如何将特定的字符串转换为DateTime?