Estoy usando TagUI (herramienta de automatización basada en js) y javascript, y mientras escribo código para extraer información de una cadena, recibo un "null no es un objeto (evaluando 'd1.match(/(Proveedor de Internet))(.*)( <br/>)/ig)[0];'
Donde d1 puede contener un par de campos que quiero extraer como parámetros si un determinado campo no está disponible, me gustaría reemplazarlo con "no aplicable"
ejemplos:
d1 = "<p>please create a new entry.</p> <p>Person's name: Tom Jones<br/> Company: some company <br/> address: street one <br/> Employee ID: 07092120 <br/></p> " OR d1 = "<p>please create a new entry.</p> <p>Person's name: Jon Tomes<br/> Company: some company2 <br/> address: street two <br/><br/> Internet provider: O2 <br/> Employee ID: 07092121 <br/></p>"He probado las siguientes expresiones sin suerte
provider = d1.match(/(Internet provider)(.*)(<br\/>)/ig)[0]; if (typeof ((d1.match(/(Internet provider)(.*)(<br\/>)/ig)[0]) === 'object' && (d1.match(/(Internet provider)(.*)(<br\/>)/ig)[0]) !== null)){provider=(d1.match(/(Internet provider)(.*)(<br\/>)/ig)[0]);}else{provider="not applicable"; } if (d1.match(/(Internet provider)(.*)(<br\/>)/ig)[0] !== null){provider="not applicable";}else{provider = d1.match(/(Internet provider)(.*)(<br\/>)/ig)[0];} if (typeof (provider = d1.match(/(Internet provider)(.*)(<br\/>)/ig)[0]) !== 'string'){provider="not applicable";}else{provider=d1.match(/(Internet provider)(.*)(<br\/>)/ig)[0]; }El comentario de @VLAZ funcionó:
Si
.match()no coincide con nada, el resultado es nulo..match()[0]generaría un error en ese caso.