60 lines
		
	
	
		
			2.7 KiB
		
	
	
	
		
			HTML
		
	
	
	
	
	
			
		
		
	
	
			60 lines
		
	
	
		
			2.7 KiB
		
	
	
	
		
			HTML
		
	
	
	
	
	
| <!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">
 | ||
| <html>
 | ||
|   <head>
 | ||
|     <title>case</title>
 | ||
|   </head>
 | ||
| 
 | ||
|   <body>
 | ||
|     <h1>case</h1>
 | ||
| 
 | ||
|     <p> Команда <strong>case</strong> исполняет один из нескольких скриптов в
 | ||
|       зависимости от полученного значения. </p>
 | ||
|      
 | ||
|     <pre>
 | ||
|       <strong>case</strong> <em>string</em> ?<em>in</em>? <em>patList</em> <em>body</em> ?<em>patList</em> <em>body</em>...?
 | ||
|       <strong>case</strong> <em>string</em> ?<em>in</em>? {<em>patList</em> <em>body</em> ?<em>patList</em> <em>body</em>...?}
 | ||
|     </pre>
 | ||
| 
 | ||
|     <h2>ОПИСАНИЕ</h2> 
 | ||
| 
 | ||
|     <p> Замечание. Команда case - устаревшая, она поддерживается
 | ||
|       только для совместимости с предыдущими версиями. В последующих
 | ||
|       версиях она может быть опущена. Поэтому предпочтительнее
 | ||
|       использование команды <a
 | ||
|       href="switch.html"><strong>switch</strong></a>.
 | ||
|     </p>
 | ||
| 
 | ||
|     <p>Команда сравнивает <em>string</em> со всеми аргументами
 | ||
|       <em>patList</em> по очереди. Каждый аргумент <em>patList</em>
 | ||
|       представляет собой один или несколько (список) образцов. Если
 | ||
|       <em>string</em> соответствует одному из образцов, то <strong>case</strong>
 | ||
|       рекурсивно вызывает интерпретатор Tcl, передает ему следующий за
 | ||
|       этим списком образцов скрипт <em>body</em> для выполнения и
 | ||
|       возвращает результат этого выполнения. Каждый аргумент
 | ||
|       <em>patList</em> состоит из одного или нескольких образцов. Каждый
 | ||
|       образец может содержать спецсимволы, как в команде <a
 | ||
|       href="string.html#match"><strong>string match</strong></a>. Кроме
 | ||
|       того, есть специальный образец <strong>default</strong>. Соответствующий
 | ||
|       ему скрипт выполняется, если <em>string</em> не соответствует
 | ||
|       никакому другому образцу.</p>
 | ||
| 
 | ||
|     <p>Если <em>string</em> не соответствует ни одному из образцов, а
 | ||
|       образец <strong>default</strong> не используется, то <strong>case</strong> вернет
 | ||
|       пустую строку.</p>
 | ||
| 
 | ||
|     <p>У команды есть две формы записи для аргументов <em>patList</em> и
 | ||
|       <em>body</em>. Первая использует отдельные аргументы для каждого
 | ||
|       шаблона и команды. Эта форма более удобна, если в образцах или
 | ||
|       командах желательно выполнить какие-либо подстановки. Во второй
 | ||
|       форме все шаблоны и команды объединены в один аргумент, который
 | ||
|       должен быть списком, состоящим из шаблонов и команд. Вторая
 | ||
|       форма позволяет проще записывать многострочные команды,
 | ||
|       поскольку при этом фигурные скобки вокруг списка позволяют не
 | ||
|       ставить обратный слэш в конце каждой строки. Однако из-за этих
 | ||
|       фигурных скобок подстановки в шаблонах и командах не
 | ||
|       производятся. Поэтому одна и та же команда, записанная в
 | ||
|       различных формах, может работать по-разному.
 | ||
|     <//p>
 | ||
|   </body>
 | ||
| </html>
 | 
