const regex = /(?>"")(\w*)/gm;
// Alternative syntax using RegExp constructor
// const regex = new RegExp('(?>"")(\\w*)', 'gm')
const str = `Sql.Database("GOULBDB42", "PALMSDB", [Query="SELECT ""tblPOEOLicence"".""InstrumentID"" as LicNo#(lf), ""tblClassification"".""Description"" as Status#(lf), ""tblPOEOLicence"".""AnniversaryDate"" as Anniv_date#(lf), ""tblLocation"".""LocationName"" as Location#(lf), ""tblLGA"".""Name"" as LicLGA#(lf), ""viewInstrumentAccountableParty"".""APName"" as Licensee#(lf), ""tblActivityGroup"".""Description"" as Schudeled_Activity#(lf), ""tblFeeBasedActivity"".""Description"" as Fee_Based_Activity#(lf), ""tblPOEOLicenceFeeBasedActivity"".""PrimaryFlag"" as PrimaryFBA#(lf), ""tblInstrument"".""DateIssued"" as DateIssued#(lf), ""tblAddress"".""Suburb"" as LocationSuburb#(lf), ""tblAddress"".""StateCode"" as LocationState#(lf)FROM (((((((((((""PALMSDB"".""dbo"".""tblPOEOLicence"" ""tblPOEOLicence"" INNER JOIN ""PALMSDB"".""dbo"".""tblInstrument"" ""tblInstrument"" ON ""tblPOEOLicence"".""InstrumentID""=""tblInstrument"".""InstrumentID"") INNER JOIN ""PALMSDB"".""dbo"".""tblPOEOLicenceFeeBasedActivity"" ""tblPOEOLicenceFeeBasedActivity"" ON ""tblPOEOLicence"".""InstrumentID""=""tblPOEOLicenceFeeBasedActivity"".""InstrumentID"") INNER JOIN ""PALMSDB"".""dbo"".""viewInstrumentAccountableParty"" ""viewInstrumentAccountableParty"" ON ""tblPOEOLicence"".""InstrumentID""=""viewInstrumentAccountableParty"".""InstrumentID"") INNER JOIN ""PALMSDB"".""dbo"".""tblInstrumentLocation"" ""tblInstrumentLocation"" ON ""tblPOEOLicence"".""InstrumentID""=""tblInstrumentLocation"".""InstrumentID"") INNER JOIN ""PALMSDB"".""dbo"".""tblLocation"" ""tblLocation"" ON ""tblInstrumentLocation"".""LocationID""=""tblLocation"".""LocationID"") INNER JOIN ""PALMSDB"".""dbo"".""tblLandTitle"" ""tblLandTitle"" ON ""tblLocation"".""LocationID""=""tblLandTitle"".""LocationID"") INNER JOIN ""PALMSDB"".""dbo"".""tblAddress"" ""tblAddress"" ON ""tblLocation"".""AddressID""=""tblAddress"".""AddressID"") LEFT OUTER JOIN ""PALMSDB"".""dbo"".""tblLandTitleLGA"" ""tblLandTitleLGA"" ON ""tblLandTitle"".""LandTitleID""=""tblLandTitleLGA"".""LandTitleID"") LEFT OUTER JOIN ""PALMSDB"".""dbo"".""tblLGA"" ""tblLGA"" ON ""tblLandTitleLGA"".""LGAID""=""tblLGA"".""LGAID"") INNER JOIN ""PALMSDB"".""dbo"".""tblFeeBasedActivity"" ""tblFeeBasedActivity"" ON ""tblPOEOLicenceFeeBasedActivity"".""FeeBasedActivityID""=""tblFeeBasedActivity"".""FeeBasedActivityID"") INNER JOIN ""PALMSDB"".""dbo"".""tblActivityGroup"" ""tblActivityGroup"" ON ""tblFeeBasedActivity"".""ActivityGroupID""=""tblActivityGroup"".""ActivityGroupID"") INNER JOIN ""PALMSDB"".""dbo"".""tblClassification"" ""tblClassification"" ON ""tblInstrument"".""InstrumentStatusID""=""tblClassification"".""ClassificationID""#(lf)"])`;
// Reset `lastIndex` if this regex is defined globally
// regex.lastIndex = 0;
let m;
while ((m = regex.exec(str)) !== null) {
// This is necessary to avoid infinite loops with zero-width matches
if (m.index === regex.lastIndex) {
regex.lastIndex++;
}
// The result can be accessed through the `m`-variable.
m.forEach((match, groupIndex) => {
console.log(`Found match, group ${groupIndex}: ${match}`);
});
}
Please keep in mind that these code samples are automatically generated and are not guaranteed to work. If you find any syntax errors, feel free to submit a bug report. For a full regex reference for JavaScript, please visit: https://developer.mozilla.org/en/docs/Web/JavaScript/Guide/Regular_Expressions