|
>改行なしの文字列だけにしてもらうことは、可能でしょうか?
>それとも、改行を入れて欲しいという要望があるのでしょうか?
>改行なしの文字列だけにしてもらうことは、可能でしょうか?
>それとも、改行を入れて欲しいという要望があるのでしょうか?
要望に左右されるというよりも、
そのように「先頭から文末の全ての文字を含める」のがプログラムでは通常のAPIの
在り方と言えます。
「自動的に行末にもしも改行があれば、その時だけこっそりカット」といった処理は
実際には混乱を招きます。
行の文字は、「先頭から末尾」までを指します。
行選択といった場合も「先頭から末尾(末尾が改行ならそれを含む)」までを指しま
す。
そのため、末尾に改行文字がある場合、それは文字として扱われるため、改行も含ま
れるというのが通常の動作です。
一方で、「最後の行の行末=文末」に改行文字が「ない」場合、その行の行末には改
行文字が含まれないことになります。文末が改行であれば、その行には改行がやはり
含まれます。
原則として、「各行を処理していく際に、全てを足し合わせると全体の文字列と完全
に一致する」ように関数が提供されるのが一般的です。
例えば、より細かい単位である「1文字ずつ処理を行う関数」が提供されるならば、
やはりそれも全て順繰りに捜査したものを足し合わせると「全体の文字列と『完全に
一致』する」のが一般的な動作です。
// 改行を除去する例
js {
// 全体の文字列を改行でsplitするのは、全ての行を「改行を抜いた状態で」処
理する際はよく利用される。
debuginfo(2);
var all = gettotaltext();
var lines = all.split(/\r?\n/);
for(var i=0; i<lines.length; i++) {
console.log(lines[i] + "\r\n");
}
// 単行を取得して、それをカットするなら下記のようになる
var line = getlinetext();
line = line.replace(/\r?\n/, "");
console.log(line + "\r\n");
}
|
|