#9804

Stefan
Participant

No, an RegEx is an pattern matching system only.
There are very little comparing features.

You will need to use an macro/script for that.
How that macro will work and what you will get as
result depends on your real current needs and how
the rest of the line looks a like: are that digits
and tabs the only signs in such an line?

Here is an quick example code.
Be sure to use this always with copies of your importent documents.
Because i don’t have an impression what could get worse.
If anyone should improve this script for you we will need an
better example how the rest of such an line will look a like.

Ahh, and this script will work only with tabs as delimiter
or it have to be adjusted as one needs.



////===== Description: ==================
//// Click into an line and execute this macro/script.
//// The line will split at tab stops
//// and if an part is detected as an number
//// the greatest number is stored as vBiggestNumber for your use.


//// ====== Setting: ====================
//// Split line at tab. Use your own delimiter if needed:
SplitAt = "t";


//// ====== Work: ======================
//// Get current line content:
document.selection.SelectLine();
CurrLine = document.selection.text;
//// Call function to split str and find biggest number:
vBiggestNumber = ReturnLargedNumber(CurrLine, SplitAt);


//// ====== End: =======================
//// Do something with the result:
alert('result: >' + vBiggestNumber + '<');
//document.selection.Collapse();
//document.selection.NewLine( );
document.selection.text = vBiggestNumber;


////======================================
////======== Function =====================
function ReturnLargedNumber(str,delim)
{
Tokens = str.split(delim);
vMaxNumber = 0;
for (x = 0; x < Tokens.length; x++)
{
vCurrentNumb = Tokens[x];
if (!isNaN(vCurrentNumb))
{
if (Number(vCurrentNumb) > vMaxNumber)
{
vMaxNumber = vCurrentNumb;
}
}
}
return vMaxNumber;
}


HTH? 😀