Header Image

Translate

woensdag 18 juli 2018

Zoeken naar labels in D365

Zoeken naar bestaande labels... welke ontwikkelaars hergebruikt er nou geen bestaande labels? Al vanaf Axapta 3.0 zoek je met "<Item" en dan vind je alle teksten die beginnen met de tekst "Item". Een voorbeeld uit Ax 2012:


Zoek naar labels die beginnen met "Item" en dan ergens de letters "not" en daarna ergens "exi".


In D365 werkt deze syntax niet meer, maar daar kan je wel werken met andere reguliere expressies. Dit zijn de .NET reguliere expressies, voor een overzicht, zie https://docs.microsoft.com/en-us/dotnet/standard/base-types/regular-expressions

In D365 is dit het equivalent:
 

Details:
^Item   = Begint met "Item"
.*         = nul of meerdere karakters
not       = na deze karakters de tekenreeks not
.*         = wederom nul of meerdere karakters
exi       = de tekensteeds exi

Je hoeft niet expliciet aan te geven dat hierna nog meer karakters kunnen komen. Als je wilt zoeken op eindigt met, dan kan je zoeken met bijvoorbeeld "AOT$". De dollar aan het eind geeft aan "moet eindigen op".

Een complexer voorbeeld:


^Item   = Moet beginnen met "Item"
.*         = nul of meer willekeurige karakters
\.          = één punt. De \ voor de '.' geeft in .NET aan dat het karakter erna moet worden gezien als een karakter, dus niet als een reguliere expressie
.+         = één of meer willekeurige karakters
\?          = één vraagteken, zelfde als de '.' is dit ook een instructie voor als reguliere expressie.
$           = einde tekenreeks, dus na de ? mag er niets meer komen.

Samengevat: zoek alle labels, die beginnen met "Item", een '.' bevatten (mag direct na de "Item"), daarna minimaal één karakter en eindigt met een ?


Geen opmerkingen:

Een reactie posten