| 408 |
<var title="">sign</var> が「正」であるなら <var title="">value</var> |
<var title="">sign</var> が「正」であるなら <var title="">value</var> |
| 409 |
を返し、そうでないなら 0-<var |
を返し、そうでないなら 0-<var |
| 410 |
title="">value</var> を返します。 |
title="">value</var> を返します。 |
| 411 |
|
|
| 412 |
|
#pattern |
| 413 |
|
<span class=secno>* </span>Ratios |
| 414 |
|
#ja |
| 415 |
|
<span class=secno>$1 </span>比率 |
| 416 |
|
|
| 417 |
|
#en |
| 418 |
|
The algorithms described in this section are used by the |
| 419 |
|
<code><a href="#progress">progress</a></code> and <code><a |
| 420 |
|
href="#meter">meter</a></code> elements. |
| 421 |
|
#ja |
| 422 |
|
この節で説明する算法は、 <code><a href="#progress">progress</a></code> 要素と |
| 423 |
|
<code><a |
| 424 |
|
href="#meter">meter</a></code> 要素で使います。 |
| 425 |
|
|
| 426 |
|
#en |
| 427 |
|
A <dfn id=valid2>valid denominator punctuation character</dfn> is one of |
| 428 |
|
the characters from the table below. There is <dfn id=a-value |
| 429 |
|
title="values associated with denominator punctuation characters">a value |
| 430 |
|
associated with each denominator punctuation character</dfn>, as shown in |
| 431 |
|
the table below. |
| 432 |
|
#ja |
| 433 |
|
<dfn id=valid2>妥当な分母句読点文字</dfn>は、 |
| 434 |
|
次の表の文字のいずれかです。次の表に示すように、<dfn id=a-value |
| 435 |
|
title="values associated with denominator punctuation characters">各分母句読点文字には関連付けられた値</dfn>があります。 |
| 436 |
|
|
| 437 |
|
#en |
| 438 |
|
Denominator Punctuation Character |
| 439 |
|
#ja |
| 440 |
|
分母句読点文字 |
| 441 |
|
|
| 442 |
|
#en |
| 443 |
|
Value |
| 444 |
|
#ja |
| 445 |
|
値 |
| 446 |
|
|
| 447 |
|
#en |
| 448 |
|
The <dfn id=steps>steps for finding one or two numbers of a ratio in a |
| 449 |
|
string</dfn> are as follows: |
| 450 |
|
#ja |
| 451 |
|
<dfn id=steps>文字列中の比率の1つか2つの数字を探す段階</dfn>は、次の通りです。 |
| 452 |
|
|
| 453 |
|
#en |
| 454 |
|
If the string is empty, then return nothing and abort these steps. |
| 455 |
|
#ja |
| 456 |
|
文字列が空である場合、何も返さず、これらの段階を停止します。 |
| 457 |
|
|
| 458 |
|
#en |
| 459 |
|
<a href="#find-a">Find a number</a> in the string according to the |
| 460 |
|
algorithm below, starting at the start of the string. |
| 461 |
|
#ja |
| 462 |
|
後述の算法に従い、文字列のはじめから開始して<a href="#find-a">数を探します</a>。 |
| 463 |
|
|
| 464 |
|
#en |
| 465 |
|
If the sub-algorithm in step 2 returned nothing or returned an error |
| 466 |
|
condition, return nothing and abort these steps. |
| 467 |
|
#ja |
| 468 |
|
段階 2 の部分算法が何も返さなかったか、誤り条件を返した場合には、 |
| 469 |
|
何も返さず、これらの段階を停止します。 |
| 470 |
|
|
| 471 |
|
#en |
| 472 |
|
Set <var title="">number1</var> to the number returned by the |
| 473 |
|
sub-algorithm in step 2. |
| 474 |
|
#ja |
| 475 |
|
<var title="">number1</var> を、段階 2 の部分算法が返した数とします。 |
| 476 |
|
|
| 477 |
|
#en |
| 478 |
|
Starting with the character immediately after the last one examined by |
| 479 |
|
the sub-algorithm in step 2, skip any characters in the string that are |
| 480 |
|
in the Unicode character class Zs (this might match zero characters). <a |
| 481 |
|
href="#refsUNICODE">[UNICODE]</a> |
| 482 |
|
#ja |
| 483 |
|
段階 2 の部分算法が調べた最後の文字の直後の文字から始めて、文字列中の Unicode |
| 484 |
|
文字クラス Zs の文字を飛ばします (これに一致するのは零文字かもしれません)。 <a |
| 485 |
|
href="#refsUNICODE">[UNICODE]</a> |
| 486 |
|
|
| 487 |
|
#en |
| 488 |
|
If there are still further characters in the string, and the next |
| 489 |
|
character in the string is a <a href="#valid2">valid denominator |
| 490 |
|
punctuation character</a>, set <var title="">denominator</var> to that |
| 491 |
|
character. |
| 492 |
|
#ja |
| 493 |
|
文字列中に更に文字がまだある場合で、文字列中の次の文字が<a href="#valid2">妥当な分母句読点文字</a>である場合には、 |
| 494 |
|
<var title="">denominator</var> をその文字に設定します。 |
| 495 |
|
|
| 496 |
|
#en |
| 497 |
|
If the string contains any other characters in the range U+0030 DIGIT |
| 498 |
|
ZERO to U+0039 DIGIT NINE, but <var title="">denominator</var> was given |
| 499 |
|
a value in the step 6, return nothing and abort these steps. |
| 500 |
|
#ja |
| 501 |
|
文字列が範囲 U+0030 DIGIT |
| 502 |
|
ZERO ~ U+0039 DIGIT NINE の文字をまだ他に含んでいる場合で、 |
| 503 |
|
段階 6 で <var title="">denominator</var> に値が与えられた場合には、 |
| 504 |
|
何も返さず、これらの段階を停止します。 |
| 505 |
|
|
| 506 |
|
#en |
| 507 |
|
Otherwise, if <var title="">denominator</var> was given a value in |
| 508 |
|
step 6, return <var title="">number1</var> and <var |
| 509 |
|
title="">denominator</var> and abort these steps. |
| 510 |
|
#ja |
| 511 |
|
そうでない場合、 <var title="">denominator</var> が段階 6 |
| 512 |
|
で値を与えられた場合には、 <var title="">number1</var> と <var |
| 513 |
|
title="">denominator</var> を返し、これらの段階を停止します。 |
| 514 |
|
|
| 515 |
|
#en |
| 516 |
|
<a href="#find-a">Find a number</a> in the string again, starting |
| 517 |
|
immediately after the last character that was examined by the |
| 518 |
|
sub-algorithm in step 2. |
| 519 |
|
#ja |
| 520 |
|
文字列中を更に<a href="#find-a">数を探します</a>が、 |
| 521 |
|
段階 2 の部分算法で調べた最後の文字の直後からはじめます。 |
| 522 |
|
|
| 523 |
|
#en |
| 524 |
|
If the sub-algorithm in step 9 returned nothing or an error condition, |
| 525 |
|
return nothing and abort these steps. |
| 526 |
|
#ja |
| 527 |
|
段階 9 の部分算法が何も返さないか、誤り条件を返す場合、 |
| 528 |
|
何も返さず、これらの段階を停止します。 |
| 529 |
|
|
| 530 |
|
#en |
| 531 |
|
Set <var title="">number2</var> to the number returned by the |
| 532 |
|
sub-algorithm in step 9. |
| 533 |
|
#ja |
| 534 |
|
<var title="">number2</var> を、段階 9 の部分算法が返した数とします。 |
| 535 |
|
|
| 536 |
|
#en |
| 537 |
|
If there are still further characters in the string, and the next |
| 538 |
|
character in the string is a <a href="#valid2">valid denominator |
| 539 |
|
punctuation character</a>, return nothing and abort these steps. |
| 540 |
|
#ja |
| 541 |
|
文字列中に更に文字がまだある場合で、文字列中の次の文字が<a href="#valid2">妥当な分母句読点文字</a>である場合、 |
| 542 |
|
何も返さず、これらの段階を停止します。 |
| 543 |
|
|
| 544 |
|
#en |
| 545 |
|
If the string contains any other characters in the range U+0030 DIGIT |
| 546 |
|
ZERO to U+0039 DIGIT NINE, return nothing and abort these steps. |
| 547 |
|
#ja |
| 548 |
|
文字列が範囲 U+0030 DIGIT |
| 549 |
|
ZERO ~ U+0039 DIGIT NINE の文字をまだ他に含んでいる場合、 |
| 550 |
|
何も返さず、これらの段階を停止します。 |
| 551 |
|
|
| 552 |
|
#en |
| 553 |
|
Otherwise, return <var title="">number1</var> and <var |
| 554 |
|
title="">number2</var>. |
| 555 |
|
#ja |
| 556 |
|
そうでない場合、 <var title="">number1</var> と <var |
| 557 |
|
title="">number2</var> を返します。 |
| 558 |
|
|
| 559 |
|
#en |
| 560 |
|
The algorithm to <dfn id=find-a>find a number</dfn> is as follows. It is |
| 561 |
|
given a string and a starting position, and returns either nothing, a |
| 562 |
|
number, or an error condition. |
| 563 |
|
#ja |
| 564 |
|
<dfn id=find-a>数を探す</dfn>ための算法は次の通りです。 |
| 565 |
|
この算法は、文字列と開始位置を与えられ、 |
| 566 |
|
何も返さないか、数を返すか、誤り条件を返すかのいずれかです。 |
| 567 |
|
|
| 568 |
|
#en |
| 569 |
|
Starting at the given starting position, ignore all characters in the |
| 570 |
|
given string until the first character that is either a U+002E FULL STOP |
| 571 |
|
or one of the ten characters in the range U+0030 DIGIT ZERO to U+0039 |
| 572 |
|
DIGIT NINE. |
| 573 |
|
#ja |
| 574 |
|
与えられた開始位置からはじめ、 U+002E FULL STOP か、範囲 U+0030 DIGIT ZERO ~ U+0039 |
| 575 |
|
DIGIT NINE の10文字のいずれかであるような最初の文字まで、 |
| 576 |
|
その文字列中のすべての文字を無視します。 |
| 577 |
|
|
| 578 |
|
#en |
| 579 |
|
If there are no such characters, return nothing and abort these steps. |
| 580 |
|
#ja |
| 581 |
|
そのような文字がない場合には、何も返さず、これらの段階を停止します。 |
| 582 |
|
|
| 583 |
|
#en |
| 584 |
|
Starting with the character matched in step 1, collect all the |
| 585 |
|
consecutive characters that are either a U+002E FULL STOP or one of the |
| 586 |
|
ten characters in the range U+0030 DIGIT ZERO to U+0039 DIGIT NINE, and |
| 587 |
|
assign this string of one or more characters to <var |
| 588 |
|
title="">string</var>. |
| 589 |
|
#ja |
| 590 |
|
段階 1 で一致した文字からはじめ、 U+002E FULL STOP か、範囲 U+0030 DIGIT ZERO ~ |
| 591 |
|
U+0039 DIGIT NINE の10文字のいずれかであるような連続した文字群をすべて集め、 |
| 592 |
|
この1文字以上の文字からなる文字列を <var |
| 593 |
|
title="">string</var> に代入します。 |
| 594 |
|
|
| 595 |
|
#en |
| 596 |
|
If <var title="">string</var> contains more than one U+002E FULL STOP |
| 597 |
|
character then return an error condition and abort these steps. |
| 598 |
|
#ja |
| 599 |
|
<var title="">string</var> が U+002E FULL STOP |
| 600 |
|
文字を複数含んでいる場合、誤り条件を返し、これらの段階を停止します。 |
| 601 |
|
|
| 602 |
|
#en |
| 603 |
|
Parse <var title="">string</var> according to the <a |
| 604 |
|
href="#rules1">rules for parsing floating point number values</a>, to |
| 605 |
|
obtain <var title="">number</var>. This step cannot fail (<var |
| 606 |
|
title="">string</var> is guaranteed to be a <a href="#valid1">valid |
| 607 |
|
floating point number</a>). |
| 608 |
|
#ja |
| 609 |
|
<var title="">string</var> を<a |
| 610 |
|
href="#rules1">浮動小数点数値を構文解析する規則</a>により構文解析し、 |
| 611 |
|
<var title="">number</var> を得ます。この段階は失敗しません (<var |
| 612 |
|
title="">string</var> は<a href="#valid1">妥当な浮動小数点数</a>であることが保証されています)。 |
| 613 |
|
|
| 614 |
|
#en |
| 615 |
|
Return <var title="">number</var>. |
| 616 |
|
#ja |
| 617 |
|
<var title="">number</var> を返します。 |
| 618 |
|
|
| 619 |
|
#pattern |
| 620 |
|
<span class=secno>* |
| 621 |
|
</span>Percentages and dimensions |
| 622 |
|
#ja |
| 623 |
|
<span class=secno>$1 |
| 624 |
|
</span>百分率と寸法 |
| 625 |
|
|
| 626 |
|
#pattern |
| 627 |
|
<span class=secno>* </span>Lists of integers |
| 628 |
|
#ja |
| 629 |
|
<span class=secno>$1 </span>整数のリスト |
| 630 |
|
|
| 631 |
|
#en |
| 632 |
|
A <dfn id=valid4>valid list of integers</dfn> is a number of <a |
| 633 |
|
href="#valid0" title="valid integer">valid integers</a> separated by |
| 634 |
|
U+002C COMMA characters, with no other characters (e.g. no <a |
| 635 |
|
href="#space" title="space character">space characters</a>). In addition, |
| 636 |
|
there might be restrictions on the number of integers that can be given, |
| 637 |
|
or on the range of values allowed. |
| 638 |
|
#ja |
| 639 |
|
<dfn id=valid4>妥当な整数の並び</dfn>は、 U+002C COMMA |
| 640 |
|
文字で分離された数々の<a |
| 641 |
|
href="#valid0" title="valid integer">妥当な整数</a>であって、 |
| 642 |
|
他の文字を含まない (例えば<a |
| 643 |
|
href="#space" title="space character">間隔文字</a>を含まない) ものです。 |
| 644 |
|
加えて、与えられる整数の数や認められる値の範囲に制限が設けられることがあります。 |
| 645 |
|
|
| 646 |
|
#en |
| 647 |
|
The <dfn id=rules3>rules for parsing a list of integers</dfn> are as |
| 648 |
|
follows: |
| 649 |
|
#ja |
| 650 |
|
<dfn id=rules3>整数のリストを構文解析する規則</dfn>は次の通りです。 |
| 651 |
|
|