function isAtPattern(pattern,patNr=0,lenOutArr=null)
		{
		skipSpace();
		var arr=pattern.exec(gStr.substr(goff));
		if (!arr)
			return false;
		//D(arr);
		if (lenOutArr!==null)
			lenOutArr[0]=arr[0].length; // Optional: return entire pattern length
		goff+=arr[0].length; // Skip the entire pattern
		gres=arr[patNr]; // Result is just the paren subpat
		return true;
		} // isAtPattern

// paren subpat (first is 1)

paren subpat (first is 1)
paren subpat ( first is 1 )
function isAtPattern(pattern,patNr=0,lenOutArr=null)
		{
		skipSpace();
		var arr=pattern.exec(gStr.substr(goff));
		if (!arr)
			return false;
		if (lenOutArr!==null)
			lenOutArr[0]=arr[0].length; 
		goff+=arr[0].length; 
		gres=arr[patNr]; 
		return true;
		} 
function isAtPattern ( pattern , patNr = 0 , lenOutArr = null ) { skipSpace ( ) ; var arr = pattern . exec ( gStr . substr ( goff ) ) ; if ( ! arr ) return false ; if ( lenOutArr !== null ) lenOutArr [ 0 ] = arr [ 0 ] . length ; goff += arr [ 0 ] . length ; gres = arr [ patNr ] ; return true ; }
paren subpat (first is 1)
paren subpat ( first is 1 )
//D(arr);
 // Optional: return entire pattern length
 // Skip the entire pattern
 // Result is just the paren subpat
 // isAtPattern
