У меня есть документ, который выглядит следующим образом:Доступ групп захвата в AS3 RegEx
public class FunctionalColors {
private static var colorArray:Array = new Array();
public function FunctionalColors(e:Enforcer) {
}
public static function get colors():Array {
if (colorArray.length == 0) {
colorArray["DIRECT CABLING"] = 0x61568F;
colorArray["10Base2 ETHERNET"] = 0x37699B;
colorArray["10BaseT ETHERNET"] = 0x6699FF;
colorArray["1 Gb Ethernet"] = 0x4169FF;
colorArray["10 Gb Ethernet"] = 0x00CDD0;
}
return colorArray;
}
}
Мне нужно, чтобы вытащить ключи colorArray (то есть «прямое соединение», «10Base2 Ethernet» и т.д.) и сохраните их в другом массиве. У меня есть регулярное выражение, которое выглядит как этот
var colorsRegEx:RegExp = new RegExp(/colorArray\[\"(.*)\"\]/g);
Это соответствует полноте, например, "colorArray [" DIRECT CABLING "]." Есть ли способ захватить только группу захвата (. *), Поэтому у меня есть ключ словаря? Похоже, если вы используете метод String.replace, вы можете ориентировать определенные группы захвата, но я не вижу способа вытащить их, чтобы использовать их в другом месте. Благодарю.
Используйте 'm = colorsRegEx.exec (string)' в цикле и получите доступ к значению 'm [1]'. –
Отлично! Спасибо, Виктор! – Surgery