User talk:MichaelWodrich: Difference between revisions

Content added Content deleted
No edit summary
Line 1: Line 1:
=={{header|XProfan}}==
=={{header|XProfan}}==
Delimiter in string "#" or ";" will be ignored.
<lang xprofan>
<lang xprofan>
// http://xprofan.de/start.htm
// https://www.paules-pc-forum.de/forum/board/104-xprofan/

// strip_comments()

Proc Min
Proc Min
Declare int PC, i, float e, t
Declare int PC, i, float e, t
Line 28: Line 24:
Declare int posi[]
Declare int posi[]
Declare int i, min_p, p
Declare int i, min_p, p

min_p = $7FFFFFFF
min_p = $7FFFFFFF
For i, 1, Len(delim)
For i, 1, Len(delim)
Line 36: Line 31:
posi[ 0 ] = InStr( chr$(34), s )
posi[ 0 ] = InStr( chr$(34), s )


If (posi[0] > 0) and (posi[0] < min_p) // if there is a string delimiter on the left side...
// if there is a string delimiter on the left side...
If (posi[0] > 0) and (posi[0] < min_p)
If Odd( Len( Left$(s,min_p) ) - Len( translate$( Left$(s,min_p), Chr$(34), "" )) ) // ...and counting of delimiter is odd, then the sign is part of a string
// ...and counting of delimiter is odd, then the sign is part of a string

If Odd( Len( Left$(s,min_p) ) - Len( translate$( Left$(s,min_p), Chr$(34), "" )) )
p = posi[ 0 ] + 1
p = posi[ 0 ] + 1
min_p = $7FFFFFFF
min_p = $7FFFFFFF
Line 54: Line 50:
posi[ 0 ] = InStr( chr$(34), s, p )
posi[ 0 ] = InStr( chr$(34), s, p )


If (posi[0] > 0) and (posi[0] < min_p) // if there is a string delimiter on the left side...
// if there is a string delimiter on the left side...
If (posi[0] > 0) and (posi[0] < min_p)
If Odd( Len( Left$(s,min_p) ) - Len( translate$( Left$(s,min_p), Chr$(34), "" )) ) // ...and counting of delimiter is odd, then the sign is part of a string
// ...and counting of delimiter is odd, then the sign is part of a string
If Odd( Len( Left$(s,min_p) ) - Len( translate$( Left$(s,min_p), Chr$(34), "" )) )
p = posi[ 0 ] + 1
p = posi[ 0 ] + 1
min_p = $7FFFFFFF
min_p = $7FFFFFFF
Line 66: Line 64:
EndIf
EndIf
EndIf
EndIf

Return Trim$( Left$( s, min_p - 1 ) )
Return Trim$( Left$( s, min_p - 1 ) )
EndProc
EndProc