2011-04-01 2 views
0

Я хочу, чтобы соответствовать этим тегам:матча датирует с JQuery

<div>03-24-2010</div> 
<div>04-23-2011</div> 

С JQuery:

("div:contains([0-9]{2}-[0-9]{2}-[0-9]{4})") 

Что мне нужно сделать, чтобы регулярное выражение здесь, чтобы заставить его работать (с использованием phpquery - PHP-реализация jquery)?

+2

См [JQuery селектор регулярных выражений] (http://stackoverflow.com/questions/190253/jquery- селектор-регулярные выражения) –

+0

Можно ли изменить HTML и добавить класс? это, конечно, упростит ситуацию. или, возможно, родительский элемент всегда будет иметь класс, который вы могли бы использовать? – david

ответ

4

Попробуйте это:

var divs = $("div").filter(function(){ 
return /[0-9]{2}-[0-9]{2}-[0-9]{4}/.test($(this).text()); 
}); 
+0

измените '.val()' на '.text()', и это сработает, http://jsfiddle.net/markcoleman/3MjzD/ –

+0

@Mark: OOPS .... Изменил tht .. Исправлено. Thx – Chandu

+0

Я использую phpquery, который является PHP-реализацией jquery. Мой разум не переводит это в правильный php. Часть, на которой я повесил трубку, - это .test. Это часть jquery? Я не вижу его в документации. – JMC

2

jQuery не поддерживает селекторы регулярных выражений из коробки. Вы должны использовать плагин в или что-то вроде http://james.padolsey.com/javascript/regex-selector-for-jquery/ (а) фильтр

+0

ОП использует jQuery ... – Neal

+0

@Neal Я думаю @ two7s_clash также ссылается на плагин, построенный на jQuery .. – Chandu

+0

Почему это было проголосовано? Это верно. –