訓練家的佈弱格-Patch1.2

The BLOG of trainer



編輯日期:2010-06-23 16:01

類型:程式設計
作者:羽山
文章時間:2010-06-23 16:01:48
瀏覽人數:4649人
標題: 字首大寫設計
網址:https://3wa.tw/blog/blog.php?id=1061
內容:
 

(範例) input:  SMITH, A.J. and OTHER, A.N. and SCROOGE, E.

       output: Smith, A.J. and Other, A.N. and Scrooge, E.

 

使用 SED 解決

 

 echo "SMITH, A.J. and OTHER, A.N. and SCROOGE, E." |sed -e 's/\(\([A-Z][A-Z]\)\+\([,|.|\ ]\)\)/\L\1/g'

 

或 Rickz 提出的

echo "SMITH, A.J. and OTHER, A.N. and SCROOGE, E." |sed 's/\([A-Z]\)\([A-Z]*\)/\1\L\2/g'

 

或 PHP 版本的

 

#!/usr/bin/php
<?php
    $argv[1];
    $lens=strlen($argv[1]);
    for($i=$lens-1;$i>=0;$i--)
    {
        if($argv[1][$i]>='A'&&$argv[1][$i]<='Z')
        {
            if($argv[1][$i-1]>='A'&&$argv[1][$i-1]<='Z')
            {
                $argv[1][$i]=strtolower($argv[1][$i]);
            }
        }
    }
    echo $argv[1];
?>

 

或 C 版本的

 

#include <stdio.h>
#include <string.h>
void main(int argc,char* argv[])
{   
    int i;
    int lens=strlen(argv[1]);
    for(i=lens-1;i>=0;i--)
    {
        if(argv[1][i]>='A'&&argv[1][i]<='Z')
        {
            if(argv[1][i-1]>='A'&&argv[1][i-1]<='Z')
            {
                argv[1][i]=argv[1][i]+32;
            }
        }
    }
    printf("%s",argv[1]);   
}

 

或 python 版本的

 

#!/usr/bin/python
#  -*-  coding:  utf-8  -*-
import re,sys
def titlecase(s):
        return re.sub(r"([A-Z])+('[A-Z]+)?",
                      lambda mo: mo.group(0)[0].upper() +
                                  mo.group(0)[1:].lower(),
                      s)

data = sys.argv[1]
print titlecase(data)

 

以上都可以達成

 

首頁  上十頁  上一頁  1 下一頁    最末頁 (總共有...1頁)

第 1 頁

有話要說  看留言 【1】
其他分類
當月訓練
(2010-06-23)
【程式設計】字首大寫設計

最新訓練
(2025-03-16)
【HONDA CBR1000RR】CBR1000RR 引擎怪聲內鏈調整器維修

(2025-03-13)
【KTM 390】KTM RC390 更換左前叉油

(2025-03-04)
【NSR 150】NSR150 排氣管尾管鑽孔排油

(2025-03-01)
【KTM 390】KTM Duke 390 更換內鏈調整器 排氣管上耐熱漆

(2025-02-15)
【KTM 390】KTM Duke 390 前叉漏油維修更換前叉油封

(2025-02-14)
【機車綜合相關】玩車工具篇

(2025-01-15)
【本田 MSX-125】MSX-125 單向閥、呼吸管清潔保養、更換安裝位置、頭罩重噴

(2025-01-14)
【木工】製作門擋

(2024-12-22)
【KTM 390】KTM RC390 更換後輪

(2024-12-17)
【木工】三樓客廳椅子維修