Edit

Share via


Char.IsPunctuation Method

Definition

Indicates whether a Unicode character is categorized as a punctuation mark.

Overloads

IsPunctuation(Char)

Indicates whether the specified Unicode character is categorized as a punctuation mark.

IsPunctuation(String, Int32)

Indicates whether the character at the specified position in a specified string is categorized as a punctuation mark.

Examples

The following code example demonstrates IsPunctuation.

C#
using System;

public class IsPunctuationSample {
    public static void Main() {
        char ch = '.';

        Console.WriteLine(Char.IsPunctuation(ch));						// Output: "True"
        Console.WriteLine(Char.IsPunctuation("no punctuation", 3));		// Output: "False"
    }
}

Remarks

Valid punctuation marks are members of the following categories in UnicodeCategory: ConnectorPunctuation, DashPunctuation, OpenPunctuation, ClosePunctuation, InitialQuotePunctuation, FinalQuotePunctuation, or OtherPunctuation. They include characters with the following Unicode code points:

  • U+0021 to U+0023
  • U+060C and U+060D
  • U+1800 to U+180A
  • U+3014 to U+301F
  • U+0025 to U+002A
  • U+061B
  • U+1944 and U+1945
  • U+3030
  • U+002C to U+002F
  • U+061E and U+061F
  • U+19DE and U+19DF
  • U+303D
  • U+003A and U+003B
  • U+066A to U+066D
  • U+1A1E and U+1A1F
  • U+30A0
  • U+003F and U+0040
  • U+06D4
  • U+1B5A to U+1B60
  • U+30FB
  • U+005B to U+005D
  • U+0700 to U+070D
  • U+2010 to U+2027
  • U+A874 to U+A877
  • U+005F
  • U+07F7 to U+07F9
  • U+2030 to U+2043
  • U+FD3E and U+FD3F
  • U+007B
  • U+0964 and U+0965
  • U+2045 to U+2051
  • U+FE10 to U+FE19
  • U+007D
  • U+0970
  • U+2053 to U+205E
  • U+FE30 to U+FE52
  • U+00A1
  • U+0DF4
  • U+207D and U+207E
  • U+FE54 to U+FE61
  • U+00AB
  • U+0E4F to U+0E5B
  • U+208D and U+208E
  • U+FE63
  • U+00AD
  • U+0F04 to U+0F12
  • U+2329 and U+232A
  • U+FE68
  • U+00B7
  • U+0F3A to U+0F3D
  • U+2768 to U+2775
  • U+FE6A and U+FE6B
  • U+00BB
  • U+0F85
  • U+27C5 to U+27C6
  • U+FF01 to U+FF03
  • U+00BF
  • U+0FD0 and U+0FD1
  • U+27E6 to U+27EB
  • U+FF05 to U+FF0A
  • U+037E
  • U+104A to U+104F
  • U+2983 to U+2998
  • U+FF0C to U+FF0F
  • U+0387
  • U+10FB
  • U+29D8 to U+29DB
  • U+FF1A and U+FF1B
  • U+055A to U+055F
  • U+1361 to U+1368
  • U+29FC and U+29FD
  • U+FF1F and U+FF20
  • U+0589 and U+058A
  • U+166D and U+166E
  • U+2CF9 to U+2CFC
  • U+FF3B to U+FF3D
  • U+05BE
  • U+169B and U+169C
  • U+2CFE and U+2CFF
  • U+FF3F
  • U+05C0
  • U+16EB to U+16ED
  • U+2E00 to U+2E17
  • U+FF5B
  • U+05C3
  • U+1735 and U+1736
  • U+2E1C and U+2E1D
  • U+FF5D
  • U+05C6
  • U+17D4 to U+17D6
  • U+3001 to U+3003
  • U+FF5F to U+FF65
  • U+05F3 and U+05F4
  • U+17D8 to U+17DA
  • U+3008 to U+3011

IsPunctuation(Char)

Source:
Char.cs
Source:
Char.cs
Source:
Char.cs

Indicates whether the specified Unicode character is categorized as a punctuation mark.

C#
public static bool IsPunctuation(char c);

Parameters

c
Char

The Unicode character to evaluate.

Returns

true if c is a punctuation mark; otherwise, false.

Remarks

Valid punctuation marks are members of the following categories in UnicodeCategory: ConnectorPunctuation, DashPunctuation, OpenPunctuation, ClosePunctuation, InitialQuotePunctuation, FinalQuotePunctuation, or OtherPunctuation. They include characters with the following Unicode code points:

  • U+0021 to U+0023
  • U+060C and U+060D
  • U+1800 to U+180A
  • U+3014 to U+301F
  • U+0025 to U+002A
  • U+061B
  • U+1944 and U+1945
  • U+3030
  • U+002C to U+002F
  • U+061E and U+061F
  • U+19DE and U+19DF
  • U+303D
  • U+003A and U+003B
  • U+066A to U+066D
  • U+1A1E and U+1A1F
  • U+30A0
  • U+003F and U+0040
  • U+06D4
  • U+1B5A to U+1B60
  • U+30FB
  • U+005B to U+005D
  • U+0700 to U+070D
  • U+2010 to U+2027
  • U+A874 to U+A877
  • U+005F
  • U+07F7 to U+07F9
  • U+2030 to U+2043
  • U+FD3E and U+FD3F
  • U+007B
  • U+0964 and U+0965
  • U+2045 to U+2051
  • U+FE10 to U+FE19
  • U+007D
  • U+0970
  • U+2053 to U+205E
  • U+FE30 to U+FE52
  • U+00A1
  • U+0DF4
  • U+207D and U+207E
  • U+FE54 to U+FE61
  • U+00AB
  • U+0E4F to U+0E5B
  • U+208D and U+208E
  • U+FE63
  • U+00AD
  • U+0F04 to U+0F12
  • U+2329 and U+232A
  • U+FE68
  • U+00B7
  • U+0F3A to U+0F3D
  • U+2768 to U+2775
  • U+FE6A and U+FE6B
  • U+00BB
  • U+0F85
  • U+27C5 to U+27C6
  • U+FF01 to U+FF03
  • U+00BF
  • U+0FD0 and U+0FD1
  • U+27E6 to U+27EB
  • U+FF05 to U+FF0A
  • U+037E
  • U+104A to U+104F
  • U+2983 to U+2998
  • U+FF0C to U+FF0F
  • U+0387
  • U+10FB
  • U+29D8 to U+29DB
  • U+FF1A and U+FF1B
  • U+055A to U+055F
  • U+1361 to U+1368
  • U+29FC and U+29FD
  • U+FF1F and U+FF20
  • U+0589 and U+058A
  • U+166D and U+166E
  • U+2CF9 to U+2CFC
  • U+FF3B to U+FF3D
  • U+05BE
  • U+169B and U+169C
  • U+2CFE and U+2CFF
  • U+FF3F
  • U+05C0
  • U+16EB to U+16ED
  • U+2E00 to U+2E17
  • U+FF5B
  • U+05C3
  • U+1735 and U+1736
  • U+2E1C and U+2E1D
  • U+FF5D
  • U+05C6
  • U+17D4 to U+17D6
  • U+3001 to U+3003
  • U+FF5F to U+FF65
  • U+05F3 and U+05F4
  • U+17D8 to U+17DA
  • U+3008 to U+3011

See also

Applies to

.NET 9 and other versions
Product Versions
.NET Core 1.0, Core 1.1, Core 2.0, Core 2.1, Core 2.2, Core 3.0, Core 3.1, 5, 6, 7, 8, 9
.NET Framework 1.1, 2.0, 3.0, 3.5, 4.0, 4.5, 4.5.1, 4.5.2, 4.6, 4.6.1, 4.6.2, 4.7, 4.7.1, 4.7.2, 4.8, 4.8.1
.NET Standard 1.0, 1.1, 1.2, 1.3, 1.4, 1.5, 1.6, 2.0, 2.1
UWP 10.0

IsPunctuation(String, Int32)

Source:
Char.cs
Source:
Char.cs
Source:
Char.cs

Indicates whether the character at the specified position in a specified string is categorized as a punctuation mark.

C#
public static bool IsPunctuation(string s, int index);

Parameters

s
String

A string.

index
Int32

The position of the character to evaluate in s.

Returns

true if the character at position index in s is a punctuation mark; otherwise, false.

Exceptions

index is less than zero or greater than the last position in s.

Remarks

Character positions in a string are indexed starting from zero.

Valid punctuation marks are members of the following categories in UnicodeCategory: ConnectorPunctuation, DashPunctuation, OpenPunctuation, ClosePunctuation, InitialQuotePunctuation, FinalQuotePunctuation, or OtherPunctuation. They include characters with the following Unicode code points:

  • U+0021 to U+0023
  • U+060C and U+060D
  • U+1800 to U+180A
  • U+3014 to U+301F
  • U+0025 to U+002A
  • U+061B
  • U+1944 and U+1945
  • U+3030
  • U+002C to U+002F
  • U+061E and U+061F
  • U+19DE and U+19DF
  • U+303D
  • U+003A and U+003B
  • U+066A to U+066D
  • U+1A1E and U+1A1F
  • U+30A0
  • U+003F and U+0040
  • U+06D4
  • U+1B5A to U+1B60
  • U+30FB
  • U+005B to U+005D
  • U+0700 to U+070D
  • U+2010 to U+2027
  • U+A874 to U+A877
  • U+005F
  • U+07F7 to U+07F9
  • U+2030 to U+2043
  • U+FD3E and U+FD3F
  • U+007B
  • U+0964 and U+0965
  • U+2045 to U+2051
  • U+FE10 to U+FE19
  • U+007D
  • U+0970
  • U+2053 to U+205E
  • U+FE30 to U+FE52
  • U+00A1
  • U+0DF4
  • U+207D and U+207E
  • U+FE54 to U+FE61
  • U+00AB
  • U+0E4F to U+0E5B
  • U+208D and U+208E
  • U+FE63
  • U+00AD
  • U+0F04 to U+0F12
  • U+2329 and U+232A
  • U+FE68
  • U+00B7
  • U+0F3A to U+0F3D
  • U+2768 to U+2775
  • U+FE6A and U+FE6B
  • U+00BB
  • U+0F85
  • U+27C5 to U+27C6
  • U+FF01 to U+FF03
  • U+00BF
  • U+0FD0 and U+0FD1
  • U+27E6 to U+27EB
  • U+FF05 to U+FF0A
  • U+037E
  • U+104A to U+104F
  • U+2983 to U+2998
  • U+FF0C to U+FF0F
  • U+0387
  • U+10FB
  • U+29D8 to U+29DB
  • U+FF1A and U+FF1B
  • U+055A to U+055F
  • U+1361 to U+1368
  • U+29FC and U+29FD
  • U+FF1F and U+FF20
  • U+0589 and U+058A
  • U+166D and U+166E
  • U+2CF9 to U+2CFC
  • U+FF3B to U+FF3D
  • U+05BE
  • U+169B and U+169C
  • U+2CFE and U+2CFF
  • U+FF3F
  • U+05C0
  • U+16EB to U+16ED
  • U+2E00 to U+2E17
  • U+FF5B
  • U+05C3
  • U+1735 and U+1736
  • U+2E1C and U+2E1D
  • U+FF5D
  • U+05C6
  • U+17D4 to U+17D6
  • U+3001 to U+3003
  • U+FF5F to U+FF65
  • U+05F3 and U+05F4
  • U+17D8 to U+17DA
  • U+3008 to U+3011

See also

Applies to

.NET 9 and other versions
Product Versions
.NET Core 1.0, Core 1.1, Core 2.0, Core 2.1, Core 2.2, Core 3.0, Core 3.1, 5, 6, 7, 8, 9
.NET Framework 1.1, 2.0, 3.0, 3.5, 4.0, 4.5, 4.5.1, 4.5.2, 4.6, 4.6.1, 4.6.2, 4.7, 4.7.1, 4.7.2, 4.8, 4.8.1
.NET Standard 1.0, 1.1, 1.2, 1.3, 1.4, 1.5, 1.6, 2.0, 2.1
UWP 10.0