English 中文(简体)
我如何利用每一字的第一封信? [闭门]
原标题:
  • 时间:2009-05-19 01:31:15
  •  标签:
Closed. This question needs to be more focused. It is not currently accepting answers.

我需要用任何语言写一个文字,以便在档案中利用每字的第一封信。

最佳回答

在沙尔,open(档案.txt )read(......), 标题(应当足够。

问题回答

使用非标准(Gnu分机)sed,从指挥线上使用:

sed -i    -r  s/(.)/U1/g  file.txt

如果你不想在现场修改“-i”。

请注意,你不应在便携式印本中使用。

C#:

string foo = "bar baz";
foo = System.Globalization.CultureInfo.CurrentCulture.TextInfo.ToTitleCase(foo);
//foo = Bar Baz

从单壳来看,使用废墟,假定您投入文件的工作被称为FILENAME,它应当保存所有现有的文件格式——它不会像其他一些解决办法那样破坏间隔:

cat FILENAME | ruby -n -e  puts $_.gsub(/^[a-z]|s+[a-z]/) { |a| a.upcase } 

Scala:

scala> "hello world" split(" ") map(_.capitalize) mkString(" ")
res0: String = Hello World

或者,鉴于投入应当是档案:

import scala.io.Source
Source.fromFile("filename").getLines.map(_ split(" ") map(_.capitalize) mkString(" "))

bash:

$ X=(hello world)
$ echo ${X[@]^}
Hello World

也可通过<代码>Ruby,在终端使用指挥线格式:

cat FILENAME | ruby -n -e  puts gsub(/w/, &:upcase) 

或:

ruby -e  puts File.read("FILENAME").gsub(/w/, &:upcase) 

这一点在PHP中做了。

$string = "I need a script in any language to capitalize the first letter of every word in a file."
$cap = ucwords($string);
VB.Net:

Dim sr As System.IO.StreamReader = New System.IO.StreamReader("c:lowercase.txt")
Dim str As String = sr.ReadToEnd()
sr.Close()
str = System.Threading.Thread.CurrentThread.CurrentCulture.TextInfo.ToTitleCase(str)
Dim sw As System.IO.StreamWriter = New System.IO.StreamWriter("c:TitleCase.txt")
sw.Write(str)
sw.Close()

实验室使用密码或密码(所有这一切都将从首都开始)来做trick。 因此,你只能开立档案并获得数据,然后使用这一功能:

<?php 
$file = "test.txt"; 
$data = fopen($file,  r );
$allData = fread($data, filesize($file));
fclose($fh);
echo ucwords($allData);
?>

Edit, 我的法典被切断。 职业介绍。

这里是另一个“鲁比”解决办法,使用“鲁比”小一点一线描述的助手(输入档案的自动阅读等)。

ruby -ni~ -e "puts $_.gsub(/w+/) { |word| word.capitalize }" foo.txt

(假定案文存放在一份名为foo.txt的档案中。)

最好用的是Ruby 1.9,如果你的案文含有非ASCII特性,则会提供大量多语文支持。

废墟:

irb> foo = ""; "foo bar".split.each { |x| foo += x.capitalize + " " }
=> ["foo", "bar"]

irb> foo
=> "Foo Bar "

废墟:

str.gsub(/^[a-z]|s+[a-z]/) { |a| a.upcase }

确实,这是nic:

str.each(   ) {|word| puts word.capitalize}

页: 1

$ perl -e  $foo = "foo bar"; $foo =~ s/(w)/uc($1)/ge; print $foo; 

Foo Bar

虽然t在评论中提到,但没有任何人登上了awk。 处理这一问题的方法:

$ cat output.txt
this is my first sentence. and this is the second sentence. that one is the third.
$
$ awk  {for (i=0;i<=NF;i++) {sub(".", substr(toupper($i), 1,1) , $i)}} {print}  output.txt 
This Is My First Sentence. And This Is The Second Sentence. That One Is The Third.

Explanation

我们穿过田地,利用每字的第一封信。 如果野外分离器不是空间,我们可以将其定义为<条码>-F>“、<条码>-F>_或以任何方式。

兹什解决办法

#!/bin/zsh
mystring="vb.net lOOKS very unsexy"
echo "${(C)mystring}"
Vb.Net Looks Very Unsexy

CAP。 网上

阿梅伊加的阿米斯基本原理非常基本,但只有把空间作为语言分离器处理。 我确信,使用PEEK和POKE的方法更好,但我的记忆充满了15年之后的任何东西。

FILE$=Fsel$("*.txt")
Open In 1,FILE$
Input #1,STR$
STR$=Lower$(STR$)
L=Len($STR)
LAST$=" "
NEW$=""
For I=0 to L-1
  CUR$=MID$(STR$,I,1)
  If LAST$=" "
    NEW$=NEW$+Upper$(CUR$)
  Else
    NEW$=NEW$+$CUR$
  Endif
  LAST$=$CUR$
Next
Close 1
Print NEW$

我错过了好老的阿莫斯语,这是与......大概相反的。

如果使用管道和沙丘:

$ echo "HELLO WORLD" | python3 -c "import sys; print(sys.stdin.read().title())"
Hello World

例如:

$ lorem | python3 -c "import sys; print(sys.stdin.read().title())"
Officia Est Omnis Quia. Nihil Et Voluptatem Dolor Blanditiis Sit Harum. Dolore Minima Suscipit Quaerat. Soluta Autem Explicabo Saepe. Recusandae Molestias Et Et Est Impedit Consequuntur. Voluptatum Architecto Enim Nostrum Ut Corrupti Nobis.

您也可使用<代码>strip()等物品去除空间,或capitalize():

$ echo "  This iS mY USER ${USER}   " | python3 -c "import sys; print(sys.stdin.read().strip().lower().capitalize())"
This is my user jenkins




相关问题
热门标签