在Matlab中将字符串中每个单词的首字母大写/大写?

Ant*_*ony 8 string matlab capitalize

在Matlab中将字符串中每个单词的第一个字母大写/大写的最佳方法是什么?


西班牙的降雨主要落在
飞往
西班牙雨中的飞机主要在飞机上

Adr*_*ian 21

所以使用字符串

str='the rain in spain falls mainly on the plain.'
Run Code Online (Sandbox Code Playgroud)

只需在Matlab中使用regexp替换函数,regexprep

regexprep(str,'(\<[a-z])','${upper($1)}')

ans =

The Rain In Spain Falls Mainly On The Plain.
Run Code Online (Sandbox Code Playgroud)

\<[a-z]场比赛每个单词的第一个字符,你可以使用转换为大写${upper($1)}

这也可\<\w用于匹配每个单词开头的字符.

regexprep(str,'(\<\w)','${upper($1)}')
Run Code Online (Sandbox Code Playgroud)

  • 有些人在面对问题时会想"我知道,我会使用正则表达式".现在他们有两个问题.:) (3认同)