<font color="black">
<font color="red">
<font color="white">
мне нужно, чтобы захватить все вокруг color="*"
Regex: Получите все вокруг строки
С color="(.*?)"
я могу захватить цвет attribut, знаю я должен инвертировать.
<font color="black">
<font color="red">
<font color="white">
мне нужно, чтобы захватить все вокруг color="*"
Regex: Получите все вокруг строки
С color="(.*?)"
я могу захватить цвет attribut, знаю я должен инвертировать.
Я предполагаю, что вы хотите его в JavaScript regex (ароматы регулярных выражений отличаются от языка к языку). Что-то вроде:
var htmlText = '<font color="black">\n' +
'<font color="red">\n' +
'<font color="white">';
var colorRegEx = /color=["']+([^\"\']*)["']+/ig;
while(colorRegEx.exec(htmlText)) {
console.log(RegExp.$1); //Should give you: black, red, white
}
В основном регулярное выражение говорит: ищите «цвет =», то по крайней мере 1, либо одиночной или двойной кавычки, то получим значение, пока мы не увидим еще одного или двойные кавычки.
Хотя, если вы делаете что-то в своем веб-приложении, вы, вероятно, захотите использовать jQuery или какую-нибудь другую библиотеку JS, чтобы помочь получить значения. , например.
<div id="fred">
<font color="black">Hello</font>
<font color="red">I like</font>
<font color="white">ice cream</font>
</div>
Тогда некоторые JQuery, чтобы получить значения цвета будут:
$.each($('#fred').children(), function(index, item) {
console.log($(item).prop('color'));
});
Отличный ответ! Извините, но мне это нужно для Java. Он также работает на Java? – Wavum
Извините, что я не Java-разработчик, поэтому я не совсем уверен, но ядро RegEx, вероятно, пригодно для использования. Я сделал это http://fiddle.re/77wtda, но я слишком устал, чтобы настроить JDK и попробовать его попробовать. (нажмите зеленую кнопку Java, а затем нажмите «Тест») – icepicker
Можете ли вы быть более конкретным? Вы хотите захватить все, кроме color = "myColor"? –
@MattKelly Да. Вот и все. – Wavum