「Test.m」のような文字列がある場合、elispを介してそのサブ文字列「Test」だけを取得するにはどうすればよいですか?私は自分の.emacs
ファイルでこれを使おうとしています。
質問する
11862 次
4 に答える
34
1つの方法は、substring
(またはsubstring-no-properties
)を使用することです:
(substring "Test.m" 0 -2) => "Test"
(
substring
STRING FROM&optional
TO )STRINGの部分文字列を内容とする新しい文字列を返します。返される文字列は、STRINGのインデックスFROM (含む) とインデックスTO (含まない) の間の文字で構成されます。 FROMとTOはゼロインデックスです: 0 はSTRINGの最初の文字を意味します。 負の値はSTRINGの末尾からカウントされます。TOがの 場合、部分文字列はSTRINGの末尾まで実行されます。
nil
于 2012-09-05T04:49:11.003 に答える
8
あなたの特定のケースでは、を使用したいかもしれませんfile-name-sans-extension
。
于 2012-09-05T15:13:52.917 に答える
4
おそらく最も柔軟なオプション (柔軟性が必要かどうかは明確ではありませんが) は、次を使用することreplace-regexp-in-string
です。
見るC-hf replace-regexp-in-string
RET
例えば:
(replace-regexp-in-string "\\..*" "" "Test.m")
于 2012-09-05T04:57:31.953 に答える