2013-11-15 3 views
-4
</head> 

<body> 

     <fieldset id="user-details">  

      <label for="name">Name:</label> 
      <input type="text" name="name" value="" /> 

      <label for="email">Email:</label> 
      <input type="email" name="email" value="" /> 

      <label for="phone">Phone: (Ex:(xxx)xxx-xxxx)</label> 
      <input type="text" name="phone" value="" /> 

      <label for="zipcode">Zip-Code</label> 
      <input type="text" name="zipcode" value="" /> 

     </fieldset><!--end user-details--> 

     <fieldset id="user-message"> 

      <label for="message">Message:</label> 
      <textarea name="message" rows="0" cols="0"></textarea> 

      <input type="submit" value="Enviar" name="submit" class="submit" />  

     </fieldset><!-- end user-message --> 

    </form> 

</body> 
</html> 

Привет, ребята, поэтому мне нужно разделить телефон на 3 квадрата, я думаю, что это называется регулярным выражением, и мне действительно нужна помощь, например (xxx) xxx xxxx, номер телефона должен быть таким!Phone Regular Expression

Буду признателен за помощь!

+1

Регулярные выражения очень полезны, и я предлагаю изучить их, если вы этого не сделали. Проверьте [этот сайт] (http://www.regular-expressions.info/tutorial.html) для учебника. –

+0

, пожалуйста, разместите только код, относящийся к вашему вопросу. – Beat

+3

Почему вы публикуете ценность бессмысленной HTML/css за милю, когда вы спрашиваете, как писать регулярное выражение в PHP? –

ответ

1
\(\d{3}\)\s\d{3}\s\d{4} 

Это должно работать с этим форматом (xxx) xxx xxxx. Я не проверял.

+0

Это примет любую строку, которая имеет этот шаблон. 'abc (123) 234 443 asdsd' соответствует вашему регулярному выражению. – codeit

3

Нет стандартного регулярного выражения для номера телефона. Для вашего формата регулярное выражение выглядит следующим образом:

 $PHONE_REGEX = /^([0-9]{3}) [0-9]{3} [0-9]{3}$/ 
     or 
     $PHONE_REGEX = /^(\d{3})\s\d{3}\s\d{3}$/ 

В HTML5

 <input type='tel' name='phone' /> //This may not match the your pattern but easy to validate filed on client side 
0

Вам не нужно регулярное выражение для этого. Просто дайте пользователю 3 квадрата:

<label for="phone">Telefono: (Ej:(xxx)xxx-xxxx)</label> 
(<input type="text" name="phoneareacode" value="" maxlength="3" />) <input type="text" name="phoneexchange" value="" maxlength="3" /> - <input type="text" name="phonenumber" value="" maxlength="4" /> 
+0

Пока пользователь не вводит все алфавитные символы в эти 3 квадрата ... – nickb

+0

@nickb 'if (ctype_digit ($ _ POST ['phoneareacode'])) {}' проще реализовать, чем регулярное выражение. – MonkeyZeus

+0

Что-то из-за вашего ответа вы оставили. – nickb