Empty string: Difference between revisions
Content added Content deleted
(→Pascal: expand revision 04670F: add Extended Pascal) |
|||
Line 2,367: | Line 2,367: | ||
=={{header|Pascal}}== |
=={{header|Pascal}}== |
||
''See [[#Delphi|Delphi]] or [[#Free Pascal|Free Pascal]]'' |
''See also [[#Delphi|Delphi]] or [[#Free Pascal|Free Pascal]]'' |
||
{{works with|Extended Pascal}} |
|||
<lang pascal>program emptyString(output); |
|||
var |
|||
s: string(20); |
|||
begin |
|||
{ assigning an empty string } |
|||
s := ''; |
|||
{ checking for an empty string } |
|||
writeLn( 'EQ(s, '''') :':20, EQ(s, ''):6); |
|||
writeLn( 'length(s) = 0 :':20, length(s) = 0:6); |
|||
{ checking that a string is not empty } |
|||
writeLn( 'NE(s, '''') :':20, NE(s, ''):6); |
|||
writeLn( 'length(s) > 0 :':20, length(s) > 0:6); |
|||
{ Beware: Only the string comparison functions (`EQ`, `NE`, etc.) take } |
|||
{ the string’s length into account. The symbolic `=` equal comparison } |
|||
{ operator, however, will pad operands with blanks to the same common } |
|||
{ length, and _subsequently_ compare individual string components. } |
|||
writeLn('!!! s = '' '' :':20, s = ' ':6); |
|||
{ If you want to perform the empty string check with an `=` comparison, } |
|||
{ you will need to call `trim` (remove trailing blanks) first. } |
|||
writeLn('trim(s) = '''' :':20, trim(s) = '':6) |
|||
end.</lang> |
|||
{{out}} |
|||
EQ(s, '') : True |
|||
length(s) = 0 : True |
|||
NE(s, '') : False |
|||
length(s) > 0 : False |
|||
!!! s = ' ' : True |
|||
trim(s) = '' : True |
|||
=={{header|Perl}}== |
=={{header|Perl}}== |