是否有任何现成的函数将驼峰案例字符串转换为下划线分隔字符串?
我想要这样的东西:
"CamelCaseString".to_underscore
Run Code Online (Sandbox Code Playgroud)
返回"camel_case_string".
...
你如何在XSL中进行大小写转换?
<xsl:variable name="upper">UPPER CASE</xsl:variable>
<xsl:variable name="lower" select="???"/>
Run Code Online (Sandbox Code Playgroud) 如何将PascalCase字符串转换为underscore_case字符串?我也需要将点转换为下划线.
例如.兑换
TypeOfData.AlphaBeta
Run Code Online (Sandbox Code Playgroud)
成
type_of_data_alpha_beta
Run Code Online (Sandbox Code Playgroud) 如果由于某种原因我想有选择地将camelCase命名的东西转换成vim中的下划线,我怎么能这样做呢?
目前我发现我可以进行搜索/s[a-z][A-Z]并记录一个宏来添加一个下划线并转换为小写,但我很好奇我是否可以使用以下内容:
%s/([a-z])([A-Z])/\1\u\2/gc
提前致谢!
编辑:我找到了camelCase的答案(这是我真正需要的),但其他人可以回答如何将CamelCase更改为camel_case吗?
如何替换一组看起来像这样的单词:
SomeText
Run Code Online (Sandbox Code Playgroud)
至
Some_Text
Run Code Online (Sandbox Code Playgroud)
?
如何使用单个 Java/Perl正则表达式搜索和替换将具有下划线的名称转换为驼峰案例名称?
underscore_variable_name -> underscoreVariableName
UNDERSCORE_VARIABLE_NAME -> underscoreVariableName
_LEADING_UNDERSCORE -> leadingUnderscore
Run Code Online (Sandbox Code Playgroud)
我要求单个正则表达式的原因是我想使用Eclipse或Notepad ++搜索和替换来实现这一点.
问题:有一种方法可以在一台机器上运行相应的测试用例而在另一台机器上运行失败(详情如下).我认为代码有问题,导致它在一台机器上偶然工作.不幸的是我找不到问题.
请注意,std :: string和utf-8编码的使用是我没有实际影响的要求.使用C++方法会很好,但遗憾的是我找不到任何东西.因此使用C函数.
方法:
std::string firstCharToUpperUtf8(const string& orig) {
std::string retVal;
retVal.reserve(orig.size());
std::mbstate_t state = std::mbstate_t();
char buf[MB_CUR_MAX + 1];
size_t i = 0;
if (orig.size() > 0) {
if (orig[i] > 0) {
retVal += toupper(orig[i]);
++i;
} else {
wchar_t wChar;
int len = mbrtowc(&wChar, &orig[i], MB_CUR_MAX, &state);
// If this assertion fails, there is an invalid multi-byte character.
// However, this usually means that the locale is not utf8.
// Note that the default locale is …Run Code Online (Sandbox Code Playgroud) 我有一个变量名称,说"WARD_VS_VITAL_SIGNS",我想将其转换为Pascal案例格式:"WardVsVitalSigns"
WARD_VS_VITAL_SIGNS -> WardVsVitalSigns
Run Code Online (Sandbox Code Playgroud)
我怎样才能进行这种转换?
我使用谷歌应用程序引擎,不能使用任何C/C++扩展,只有纯和pythonic库来转换Unicode/UTF-8字符串到大/小写.str.lower()和string.lowercase()没有.
如果我想在蛇形大小写中写一个像“第 1 列”这样的短语(格式化标识符的常用 C 方式,看起来像some_function),我是否在单词或数字之间插入下划线,比如column_1,或者不是,比如column1?
这可能是一个令人痛苦的微不足道的问题,但我一直无法找到可以回答这个问题的蛇案例定义。
我有一个字符串
$string= 'AbCdEf';
Run Code Online (Sandbox Code Playgroud)
我想使用tr函数将所有大写字母转换为小写字母,将所有小写字母转换为大写字母....同时.我基本上只想扭转它成为.
aBcDeF
Run Code Online (Sandbox Code Playgroud)
我提出了这条线,但我不知道如何修改它来做我想要的.有什么帮助吗?
$string=~ tr/A-Z/a-z/;
Run Code Online (Sandbox Code Playgroud)
谢谢!
case-conversion ×11
string ×4
regex ×3
c ×1
c# ×1
c++ ×1
formatting ×1
javascript ×1
pascalcasing ×1
pcre ×1
perl ×1
php ×1
python ×1
replace ×1
ruby ×1
snakecasing ×1
utf-8 ×1
vim ×1
xpath ×1
xslt ×1