「Vl-string-subst」の版間の差分
(ページの作成: ; 構文 : (vl-string-subst ''new-str'' ''pattern'' ''string'' [''start-pos'']) ; 機能 : 文字列内の特定の文字列を他の文字列で置換する。 ; 引数 :* n…) |
編集の要約なし |
||
(同じ利用者による、間の3版が非表示) | |||
1行目: | 1行目: | ||
{{AutoLISP}} | |||
; 構文 | ; 構文 | ||
: (vl-string-subst ''new-str'' ''pattern'' ''string'' [''start-pos'']) | : (vl-string-subst ''new-str'' ''pattern'' ''string'' [''start-pos'']) | ||
5行目: | 7行目: | ||
; 機能 | ; 機能 | ||
: 文字列内の特定の文字列を他の文字列で置換する。 | : 文字列内の特定の文字列を他の文字列で置換する。 | ||
; 引数 | ; 引数 | ||
13行目: | 16行目: | ||
: * 検索は大文字と小文字が区別され、最初に見つかった文字列のみが置換されることに注意。 | : * 検索は大文字と小文字が区別され、最初に見つかった文字列のみが置換されることに注意。 | ||
; 戻り値 | ; 戻り値 | ||
19行目: | 23行目: | ||
; サンプル | ; サンプル | ||
: 文字列 "甲殻" を "攻殻" に置換する。 | <pre class="brush:autolisp;"> | ||
; 文字列 "甲殻" を "攻殻" に置換する。 | |||
(vl-string-subst "攻殻" "甲殻" "甲殻機動隊") | |||
"攻殻機動隊" | |||
; "Ben" を "Obi-wan" に置換する。 | |||
(vl-string-subst "Obi-wan" "Ben" "ben Kenobi") | |||
"ben Kenobi" | |||
; vl-string-subst 関数は "Ben" に一致する文字列を発見できないので、置換は行われない。文字列内の "ben" を検索するには、小文字の "b" で始まっていなければならない。 | |||
; "Ben" を "Obi-wan" に置換する。 | |||
(vl-string-subst "Obi-wan" "Ben" "Ben Kenobi Ben") | |||
"Obi-wan Kenobi Ben" | |||
; 文字列内には、検索される文字列 "Ben" が 2 つ存在するが、vl-string-subst 関数は最初に現れた文字列のみを置換する。 | |||
;"Ben" を "Obi-wan" に置換する。今度は、文字列内の 4 番目の文字から検索を開始する。 | |||
(vl-string-subst "Obi-wan" "Ben" "Ben ¥"Ben¥" Kenobi" 3) | (vl-string-subst "Obi-wan" "Ben" "Ben ¥"Ben¥" Kenobi" 3) | ||
"Ben ¥"Obi-wan¥" Kenobi" | |||
; 文字列内には、検索される文字列 "Ben" が 2 つ存在するが、vl-string-subst 関数は 4 番目の文字から検索を開始するように指示されたので、後の "Ben" を発見して置換される。最初の "Ben" は置換されない。 | |||
; dwgファイルから拡張子を抜く(手抜き版) | |||
(vl-string-subst "" ".dwg" (strcase (getvar "DWGNAME") T)) | |||
</pre> | |||
----- | |||
関連事項 | |||
* [[subst]] | |||
* [[vl-string-right-trim]] 関数 | |||
* [[vl-string-left-trim]] 関数 | |||
* [[string-right-trim]] 関数 (Gz-Lib関数) | |||
[[Category:AutoLISP]] | [[Category:AutoLISP]] |
2021年3月27日 (土) 05:25時点における最新版
- 構文
- (vl-string-subst new-str pattern string [start-pos])
- 機能
- 文字列内の特定の文字列を他の文字列で置換する。
- 引数
-
- new-str : pattern の置換後の文字列。
- pattern : 置換するパターンを含んだ文字列。
- string : pattern を検索する文字列。
- start-pos : 検索開始位置を示す整数。省略した場合は 0(ゼロ)。
- * 検索は大文字と小文字が区別され、最初に見つかった文字列のみが置換されることに注意。
- 戻り値
- 置換後の string の値。
- サンプル
; 文字列 "甲殻" を "攻殻" に置換する。 (vl-string-subst "攻殻" "甲殻" "甲殻機動隊") "攻殻機動隊" ; "Ben" を "Obi-wan" に置換する。 (vl-string-subst "Obi-wan" "Ben" "ben Kenobi") "ben Kenobi" ; vl-string-subst 関数は "Ben" に一致する文字列を発見できないので、置換は行われない。文字列内の "ben" を検索するには、小文字の "b" で始まっていなければならない。 ; "Ben" を "Obi-wan" に置換する。 (vl-string-subst "Obi-wan" "Ben" "Ben Kenobi Ben") "Obi-wan Kenobi Ben" ; 文字列内には、検索される文字列 "Ben" が 2 つ存在するが、vl-string-subst 関数は最初に現れた文字列のみを置換する。 ;"Ben" を "Obi-wan" に置換する。今度は、文字列内の 4 番目の文字から検索を開始する。 (vl-string-subst "Obi-wan" "Ben" "Ben ¥"Ben¥" Kenobi" 3) "Ben ¥"Obi-wan¥" Kenobi" ; 文字列内には、検索される文字列 "Ben" が 2 つ存在するが、vl-string-subst 関数は 4 番目の文字から検索を開始するように指示されたので、後の "Ben" を発見して置換される。最初の "Ben" は置換されない。 ; dwgファイルから拡張子を抜く(手抜き版) (vl-string-subst "" ".dwg" (strcase (getvar "DWGNAME") T))
関連事項
- subst
- vl-string-right-trim 関数
- vl-string-left-trim 関数
- string-right-trim 関数 (Gz-Lib関数)