テンプレート:Str mid
このテンプレートは4,000以上のページで使われています。 余計な混乱やサーバーへの負荷を避けるために、どんな変更でも最初はテンプレートのサンドボックス・サブページ、テストケース・サブページもしくはあなた自身の利用者スペースのページで試すべきです。そうすれば、試した変更を1度の編集でこのテンプレートに加えることができます。しかし、最初にあなたの提案した変更を、この項目のノートで議論するようにお願いします。 |
Lua logo | Luaモジュールを使用しています: |
Usage
Characters in the source string are counted: the first is index <syntaxhighlight lang="text" class="" id="" style="" inline="1">1</syntaxhighlight>, the last one is index <syntaxhighlight lang="text" class="" id="" style="" inline="1">length of string</syntaxhighlight>. The substring requested can be defined by these two indexes. Also, the substring can be defined by one index, and the substring length. The options are: {{str mid|<string>|<index of first character>|<length of substring>|<index of last character>}} It returns a part of the <string>, starting with character on position index, length <sublength>, last character returned is end index.
{{str mid|Abcdefghijklmnopqrstuvwxyz|5|3}}
→ efg
If parameter 2 is omitted, start is from character 1:
{{str mid|Abcdefghijklmnopqrstuvwxyz||5}}
→ Abcde
If parameter 3 is omitted, the whole rest of the string is returned:
{{str mid|Abcdefghijklmnopqrstuvwxyz|15}}
→ opqrstuvwxyz
Counting from the end
By entering a negative value, the index is counted from the end:
{{str mid|Abcdefghijklmnopqrstuvwxyz|-7|4}}
→ tuvw{{str mid|Abcdefghijklmnopqrstuvwxyz|-7}}
→ tuvwxyz
Instead if substring length, use index for last character
By using parameter |4=n
, a number, you do not ask for substring length, but the last character (as counted from the start of the input string):
- {{str mid|Abcdefghijklmnopqrstuvwxyz|5||7}} → efg
Spaces are kept
In the returned substring, spaces are kept:
>{{str mid|I like this.|2|6}}<
→ >like<
But the input string is trimmed:
>{{str mid| I like this. |2|6}}<
→ >like<
Error messages
When the ranges (either param2 or the substring length) is out impossible in the string, an error is returned:
{{str mid|Abcdefghijklmnopqrstuvwxyz|30}}
→ モジュールStringのエラー: String subset index out of range{{str mid|Abcdefghijklmnopqrstuvwxyz|0|45}}
→ efghijklmnopqrstuvwxyz
The error can be suppressed by using |ignore errors=true
. A blank (empty string) will be returned:
{{str mid|Abcdefghijklmnopqrstuvwxyz|0|45|ignore errors=true}}
→ efghijklmnopqrstuvwxyz
Error category
|no category=true
switches off category adding.|error category=[[Category:Your category name]]
sets the category to be added when in case of an error.
- Default is Category:Errors reported by Module String.