Help:条件文

ウィキペディア日本語版ヘルプページです。元文書はメタウィキヘルプです。



MediaWikiParserFunctions
{{#関数名: 引数 1 | 引数 2 | 引数 3...}}

ParserFunctions  Help: 

各関数[編集]


expr, if, ifeq, ifexist, ifexpr, switch, time, timel, rel2abs, titleparts, iferror 11


{{#expr: <数式> }}

<> 

使

{{#expr: 1 + 2 }} = 3 (1 + 2 = 3)

使 =  

expr[]


expr 
{{#expr: <数式> }}

[]


Formatnum

数値形式[編集]

サポートしている数値形式は、

形式
数字のみ 1234567890 {{#expr: 1234567890 }} = 1234567890
カンマ付き数字 1,234,567,890 Formatnumを使用することで可能
{{#expr: {{Formatnum:1,234,567,890|R}} }} = 1234567890
小数 123.456 {{#expr: 123.456 }} = 123.456
分数 1 + 2/3 {{#expr: 1 + 2/3 }} = 1.6666666666667
指数表記 123.456e7 {{#expr: 123.456e7 }} = 1234560000
指数表記 123.45678e12 {{#expr: 123.45678e12 }} = 1.2345678E+14
指数表記 123.45678E-12 {{#expr: 123.45678E-12 }} = 1.2345678E-10
指数表記 1.23456×109 乗算演算子とべき乗演算子を使用することで可能
{{#expr: 1.23456 * 10^9}} }} = 1234560000

演算子の優先順位[編集]

サポートしている演算子の優先順位は、

演算子 演算
( ) 優先 {{#expr: (30 + 7) * 7 }} = 259
+ 正符号 {{#expr: 30 * +7 }} = 210
- 負符号 {{#expr: 30 * -7 }} = -210
not 論理否定 {{#expr: not 0 * 7 }} = 7
{{#expr: not 30 * 7 }} = 0
* 乗算 {{#expr: 30 * 7}} = 210
/ 除算(div と全く同じ) {{#expr: 30 / 7}} = 4.2857142857143
div 除算(/ と全く同じ) {{#expr: 30 div 7}} = 4.2857142857143
mod 剰余 {{#expr: 30 mod 7}} = 2
+ 加算 {{#expr: 30 + 7}} = 37
- 減算 {{#expr: 30 - 7}} = 23
round 四捨五入
round の右に小数点以下の桁数を入れる
{{#expr: 30 / 7 round 7}} = 4.2857143
= 等号、左右は等しい {{#expr: 30 = 7}} = 0[正しくない]
<> 不等号、左右は等しくない {{#expr: 30 <> 7}} = 1[正しい]
!= 不等号、左右は等しくない、排他的論理和 {{#expr: 30 != 7}} = 1
< 小なり、左は右より小さい {{#expr: 30 < 7}} = 0
> 大なり、左は右より大きい {{#expr: 30 > 7}} = 1
<= 左は右以下 {{#expr: 30 <= 7}} = 0
>= 左は右以上 {{#expr: 30 >= 7}} = 1
and 論理積 {{#expr: 30 and 7}} = 1
or 論理和 {{#expr: 30 or 7}} = 1

取り扱える他の演算子[編集]

この他、以下の演算子も使用できます。

演算子 演算
^ べき乗 {{#expr: 4^2}} = 16
{{#expr: 2^7}} = 128
ln 自然対数 {{#expr: ln2}} = 0.69314718055995
abs 絶対値。符号の除去 {{#expr: abs1.2}} = 1.2
{{#expr: abs-1.2}} = 1.2
trunc 小数点以下切り捨て {{#expr: trunc1.5}} = 1
{{#expr: trunc-1.2}} = -1
floor 。引数以下の最大の整数 {{#expr: floor 1.2}} = 1
{{#expr: floor -1.2}} = -2
ceil 天井。引数より大きい最小の整数 {{#expr: ceil 1.2}} = 2
{{#expr: ceil -1.2}} = -1
sin 三角関数 {{#expr: sin .1}} = 0.099833416646828
{{#expr: sin(30*pi/180)}} = 0.5
cos
tan
asin
acos
atan

 0 1

 "." E使 IEEE 754 

使 {{#expr: (100 - 32) / 9 * 5 round 0 }} = 38

[]


 Template:Root 

: {{root|2}} = 1.4142135623731

if[]


if  ...  ...  ...
{{#if: <もし文> | <ならば文> | <さもなくば文> }}
{{#if: <もし文> | <ならば文> }}

<> <> <> <> <> <> 

 0 
{{#if: {{{引数|}}} | {{{引数}}} | 0 }}


{{テンプレート|引数=なにがし}}


{{テンプレート}}

  
{{テンプレート|引数=}}

 0 
{{#if: {{{引数|}}} | {{{引数}}} }}

1 0 
{{#if: {{{引数|}}} | 1 | 0 }}

 {{{|}}}  "|"  "|" "" "" #if: {{{|}}} "" 
{{#if: {{{引数A|{{{引数B|}}}}}} | 1 | 0 }}

"A" B1 0 

if

{{#if: 1 = 2 ||}} =  1 = 2 

ififeq 使 ifexpr 使

ifeq[]


ifeq 2
{{#ifeq: <文字列1> | <文字列2> | <等しいときに返す文> | <等しくないときに返す文> }}
{{#ifeq: <対象文字列> | <比較文字列>
  | <等しいときに返す文>
  | <等しくないときに返す文>
}}



{{#ifeq: 007 | 7 |  |  }} = 

{{#ifeq: +7 | 7 |  |  }} = 

{{#ifeq: 0 | -0 |  |  }} = 

{{#ifeq: 1e2 | 100 |  |  }} = 

{{#ifeq: 0x10 | 16 |  |  }} = 

() {{#expr:}} eEpiPI

{{#ifeq: e | E |  |  }} = 

{{#ifeq: pi | PI |  |  }} = 

 (") 

{{#ifeq: "007 | "7 |  |  }} = 

{{#ifeq: "+007 | "7 |  |  }} = 

{{#ifeq: "1e2 | "100 |  |  }} = 

{{#ifeq: "0x10 | "16 |  |  }} = 



{{#ifeq: A | a |  |  }} = 



{{#ifeq: 1e2 | 1E2 |  |  }} = 

{{#ifeq: 0x1 | 0X1 |  |  }} = 

ifexist[]


ifexist 21
{{#ifexist: <ページ名> | <あるときに返す文> | <ないときに返す文> }}

1調23調

{{#ifexist:Foo|Bar|RFC 3092}} = Bar Foo 

{{#ifexist:Help:||}} =  Help:

{{#ifexist:m:Help:Calculation||}} =  m:Help:Calculation



 {{If interwiki link}}使

ifexpr[]


ifexpr 2
{{#ifexpr: <数式> | <真の場合に返す文> | <偽の場合に返す文> }}

 0  <>  <>  expr 

{{#ifexpr: {{ns:0}} | Toast | or else }} = or else {{ns:0}} 



{{#ifexpr:1/0|0|0}} = 0 

{{#ifexpr:1/n|0|0}} = :n

<><>

{{#ifexpr:1/2}} =



{{#ifexpr:1/0}} = 0 

{{#ifexpr:1/n}} = :n



{{#if: {{#ifexpr:1/0}} |  |  }} = 

{{#if: {{#ifexpr:1/n}} |  |  }} = 

{{#if: {{#ifexpr:1E4}} |  |  }} = 

{{#if: {{#ifexpr:a=b}} |  |  }} = 

{{#if: {{#ifexpr:1=2}} |  |  }} = 

switch[]


switch 
{{#switch: <基準値>
| <値1> = <返す文1>
| <値2> = <返す文2>
| ...
| <値n> = <返す文n>
| <その他の時に返す文>
}}

switch #default 
{{#switch: <基準値>
| <値> = <返す文>
| #default = <その他の時に返す文>
}}


{{#switch: <基準値>
| <値1>
| <値2>
| <値3> = <返す文3>
| ...
| <値n> = <返す文n>
| <その他の時に返す文>
}}

123

switch  ifeq 

{{#switch: 007 | 7=7 | 007=007 | #default= }} = 7

{{#switch: "007" | 7=7 | 007=007 | #default= }} = 

{{#switch: "007" | 7=7 | "007"="007" | #default= }} = "007"

{{#switch: 16 | 0x10=0x10 | #default= }} = 

{{#switch: 0x10 | 16=16 | #default= }} = 

{{#switch: "0x10" | 16=16 | 0x10=0x10 | "0x10"="0x10" | #default= }} = "0x10"

 {{lc:}}  {{uc:}} 使

{{#switch: A | a= | A= }} = 

{{#switch: A | a= |  }} = 

{{#switch: a | a= |  }} = 

{{#switch: {{uc:a}} | a= |  }} = 

{{#switch: {{lc:A}} | a= |  }} = 

time[]


time 


{{#time: <書式> }}
{{#time: <書式> | <日付/時間> }}
{{#time: <書式> | <日付/時間> | <言語コード> }}



</> HTMLUTC1稿action=purge URLTemplate:purge

 <> PHPdate()PHP xn
コード 説明 出力(例) 現在の出力
Y 4桁の西暦年。 2006 2024
y 2桁の西暦年 00 から 99 24
L 閏年かどうかの判定。 閏年なら 1 、そうでなければ 0 1
o ISO 8601での暦週が属する暦年。 2013 2024
n の数字。ひと桁の時も0が前に付かない。 1 から 12 5
m 月の数字。ひと桁の時は0が前に付く。 01 から 12 05
M 月の短縮形。たいていは国際化されている。 1月 から 12月 5月
F 月。たいていは国際化されている。 1月 から 12月 5月
t 月の日数。 28 から 31 31
W ISO 8601形式の週数。ひと桁の時は0が前に付く。 01 から 53 21
j 。ひと桁の時も0が前に付かない。 1 から 31 21
d 日。ひと桁の時は0が前に付く。 01 から 31 21
z 0から数えたその年の通算日数。 0 から 365 141
D 曜日の短縮形。まれに国際化されている。[t 1] 月 から 日
l 曜日。まれに国際化されている。[t 1] 月曜日 から 日曜日 火曜日
w 曜日の数値(アメリカ式)。[t 1] 0(日曜日) から 6(土曜日) 2
N ISO 8601形式の曜日の数値。[t 1] 1(月曜日) から 7(日曜日) 2
a 午前午後を am/pm で。 am または pm pm
A 午前、午後を AM/PM で。 AM または PM PM
g 12時間制の時刻。ひと桁の時は0が前に付かない。 1 から 12 6
h 12時間制の時刻。ひと桁の時は0が前に付く。 01 から 12 06
G 24時間制の時刻。ひと桁の時は0が前に付かない。 0 から 23 18
H 24時間制の時刻。ひと桁の時は0が前に付く。 00 から 23 18
i 。ひと桁の時は0が前に付く。 00 から 59 51
s 。ひと桁の時は0が前に付く。 00 から 59 08
U 1970年1月1日 00:00:00 (GMT) からの秒数(UNIX時間うるう秒は考えない)。 1716317468
c ISO 8601形式の日付。Y-m-dTH:i:sPと同じ結果を返す。 2024-05-21T18:51:08+00:00
r RFC 2822形式の日付。[t 1] D, j M Y H:i:s Oと同じ結果を返す。 Tue, 21 May 2024 18:51:08 +0000
e タイムゾーン識別子。 UTC UTC
I 夏時間かどうか。 0または1 0
O コロンなしのグリニッジ標準時との時差 +0000 +0000
P コロン付きのグリニッジ標準時との時差。 +00:00 +00:00
T タイムゾーンの略称。 UTC UTC
Z タイムゾーンの秒単位の時差。 0 0


(一)^ abcdePHP 5.2175217529PHP 5.3

以下の <書式> の指定文字は、PHPの文法にはない拡張された文字です。

コード 説明
xn 数字を返すコードの前に置いて、それがASCII数字となるようにする。例えば、ヒンディー語環境において、{{#time:H, xnH | 06:30}} は ०६, 06を返す。
xN これが書かれてより後のコードが半角数字となるようにする。 xn と似ているが、こちらは行の最後まで、もしくはもう一度 xN が現れるまでの全てのコードに作用する。
xr 数字を返すコードの前に置いて、それがローマ数字となるようにする。3000まで対応。{{#time:xrH | 06:30}} は VI を返す。
xg 月の名前の所有格。
xx 文字の「x」そのもの。
xmj ヒジュラ暦の日。
xmF ヒジュラ暦の月。
xmn ヒジュラ暦の月の数字。
xmY ヒジュラ暦の4桁の年。
xij イラン暦の日。
xiF イラン暦の月。
xin イラン暦の月の数字。
xiY イラン暦の4桁の年。
xiy イラン暦の2桁の年。
xjj ユダヤ暦の日。
xjF ユダヤ暦の月。
xjt ユダヤ暦の月の日数。
xjx ユダヤ暦の月の所有格。
xjn ユダヤ暦の月の数字。
xjY ユダヤ暦の4桁の年。
xkY タイ太陽暦の4桁の年。
xoY 民国紀元の年。
xtY 日本の元号による年。

2

(一) (") 
{{#time: Fには雪が"1m積もった。" |2006-02-12}}  21m

{{#time:i's" |0:20:11}}  20'11"

(二)PHPdate() \\H H\"  " \\  \ 
{{#time: "The month is" F}}  The month is 5

{{#time: \"The month is\" \F}}  "UTC06UTC 05202453106 5108" F

{{#time:\\123}}  \123

<> PHP  x

 </> PHP strtotime() 使 December 11  2006-12-11 便 +10 hours PHP:  - Manual



{{#time:Y年Fj日|-14 days}}  20245714

{{#time:H:i|+9 hours}}  03:51 /UTC+9

{{#time:H:i|8:15 +6 hours}}  14:15 6

{{#time:xtY年nj (D) H:i:s (T)}}  6521 () 18:51:08 (UTC) 

{{#time:i′s}}  5108

PHPPHP:PHP 5.132UNIX 197011 00:00:01  2038119 03:14:07 2038PHP 5.25.3.5 11111 00:00:00  99991231 23:59:59 15821014使1500229

timel[]


UTC#timel#time

rel2abs[]


rel2abs 
{{#rel2abs: パス }}
{{#rel2abs: パス | 基準パス }}

/  ./  ../ /../  /. ..  . 

:

Help:Foo/bar {{#rel2abs: ../baz }} Help:Foo/baz 

Help:Foo  {{#rel2abs: ../baz }} baz 

Help:Foo  {{#rel2abs: ../../baz }} Error: Invalid depth in path: "Help:Foo/../../baz" (tried to access a node above the root node)" 

{{#rel2abs: ../baz | Help:Bar/foo }} Help:Bar/baz 

{{#rel2abs: Help:Foo/bar/../baz }} Help:Foo/baz 

 {{ #ifexist }} 

:
{{#ifexist: {{#rel2abs: .. }} | '..' が存在します。 | '..' は存在しません。}}

titleparts[]


 titleparts [1]
{{#titleparts: <ページ名> | <セグメント数> | <開始点> }}

<><><>1



{{#titleparts:Help:Link/a/b|0|}} = Help:Link/a/b

{{#titleparts:Help:Link/a/b|1|}} = Help:Link

{{#titleparts:Help:Link/a/b|2|}} = Help:Link/a

{{#titleparts:Help:Link/a/b|3|}} = Help:Link/a/b

{{#titleparts:Help:Link/a/b|4|}} = Help:Link/a/b



{{#titleparts:Help:Link/a/b|1|2}} = a

{{#titleparts:Help:Link/a/b|2|2}} = a/b

{{#titleparts:Help:Link/a/b|1|3}} = b



{{#titleparts:Help:Link/a/b|-1|}} = Help:Link/a

{{#titleparts:Help:Link/a/b|1|-1}} = b

iferror[]


 iferror 
{{#iferror:<条件文>|<エラー>|<成功>}} 

<strong class="error"> HTML  #expr, #ifexpr, #time, #rel2absMediaWiki[1]



{{#iferror:{{#expr:1+1}}|bad input|valid expression}} = valid expression

{{#iferror:{{#expr:1+Z}}|bad input|valid expression}} = bad input

<><><><><><>

{{#iferror:{{#expr:1+1}}|bad input}} = 2

{{#iferror:{{#expr:1+Z}}|bad input}} = bad input

{{#iferror:{{#expr:1+1}}}} = 2

{{#iferror:{{#expr:1+Z}}}} =

[]


:

注意[編集]

subst[編集]


subst  subst:  # H:SUBST 

[]


 | {{!}}, {{!!}}, {{!-}}  |, ||, |- {{{!}}  {{!}}}  {|  |} 

HTML 

脚注[編集]

注釈[編集]

  1. ^ r22711にて導入、 r28708にてマイナスをとれるように。

出典[編集]

  1. ^ r29774, r29775, r29877を参照。

関連項目[編集]

外部リンク[編集]