在字符串的每個單詞中首字母大寫的最簡單方法是什麼?如何在Perl中使用字符串中的每個單詞的首字母大寫?
23
A
回答
14
請參閱the faq。
我不相信ucfirst()滿足OP的問題,以便將字符串中每個單詞的第一個字母大寫,而不用拆分字符串並稍後加入。
10
看看ucfirst函數。
$line = join " ", map {ucfirst} split " ", $line;
5
$string =~ s/(\w+)/\u$1/g;
應該只是罰款
0
請注意,如果您有在全部大寫的單詞,你想他們是常見問題的解決方案不工作(只),而不是資本。您可以製作更復雜的正則表達式,或者在應用常見問題解答之前在字符串上執行lc。
0
地圖中的ucfirst函數肯定會這樣做,但只能以非常基本的方式。如果你想要一些更復雜的東西,看看John Gruber's TitleCase script。
46
由於@brian在評論中提到@piCookie目前接受的答案是錯誤的!
$_="what's the wrong answer?";
s/\b(\w)/\U$1/g
print;
這將打印出「錯誤的答案是什麼?注意錯誤地大寫小號
由於FAQ說你可能會更好過使用
s/([\w']+)/\u\L$1/g
7
$capitalized = join '', map { ucfirst lc } split /(\s+)/, $line;
通過捕獲的空白,它被插在列表中,並用於重建原始間距。 「ucfirst lc」將「teXT」改爲「文本」。
1
您可以使用'Title Case',它是一個用Perl編寫的非常酷的代碼。
2
本大寫只有每一行的第一個字:
perl -ne "print (ucfirst($1)$2) if s/^(\w)(.*)/\1\2/" file
0
試試這個:
echo "what's the wrong answer?" |perl -pe 's/^/ /; s/\s(\w+)/ \u$1/g; s/^ //'
什麼是錯誤的答案?
相關問題
- 1. 在Matlab中字符串中的每個單詞的首字母大寫/首字母大寫?
- 2. 在windows phone上字符串中的每個單詞的首字母大寫
- 3. 如何自動大寫C#中每個單詞的首字母?
- 4. 爲字符串中的每個單詞首字母大寫。本地化問題
- 5. 如何在使用Java的字符串中首字母大寫?
- 6. 在vim中選擇每個單詞的首字母大寫
- 7. 使用增強庫大寫句子中每個單詞的首字母大寫
- 8. 首字母大寫的字符串首字母大寫
- 9. 字符類大寫字符串中每個單詞的第一個字母
- 10. 在Drupal 7中輸入每個單詞的首字母大寫字母
- 11. MySQL中每個單詞(utf8)的大寫首字母
- 12. 將列中每個單詞的首字母大寫Python
- 13. 首字母大寫從MySQL與PHP/jQuery拉的每個單詞的首字母
- 14. Swift大寫字母中每個單詞的第一個字母
- 15. preg_match檢查字符串中每個單詞的第一個字母的大寫
- 16. 如何在句子中大寫字符串的首字母?
- 17. 如何在PHP中使用html內容在字符串中創建每個單詞的大寫字母
- 18. 將字符串中每個單詞的最後一個字母大寫
- 19. 如何將字符串中的每個單詞改爲大寫?
- 20. 字符串的首字母大寫
- 21. 用大寫字母填滿句子中的每個單詞的首字母大寫
- 22. MySQL - 每個單詞的首字母大寫
- 23. 返回每個單詞的首字母大寫
- 24. 如何反轉字符串中每個字母的大小寫?
- 25. 將字符串中的第一個字符大寫首字母大寫
- 26. 使字符串中的大寫單詞
- 27. 用Perl編寫文本中每個單詞的字母
- 28. R:如何在數據框中用大寫字母分隔每個單詞的首字母?
- 29. 對輸入字段中包含的每個單詞進行首字母大寫
- 30. 使用perl計算字符串中的大寫字母
Err,\ u是通過調用ucfirst在內部實現的,所以你的陳述與你自己的建議相矛盾:-) – 2008-09-16 21:52:58
s /// g開關迭代,所以它執行整個字符串當我第一次看到另一個答案只是「看看ucfirst函數」時,我覺得至少應該提到關於split/join的更多內容,而且我看到編輯過的人員已經包含了這些信息。 – piCookie 2008-09-16 21:55:26
你不想使用你給出的建議,這是常見問題解答使用的代碼來顯示錯誤的方式。在那之後閱讀文本,我解釋了爲什麼答案是錯誤的。 :) – 2008-09-18 06:27:31