using System;
using System.Text.RegularExpressions;
public class Example
{
public static void Main()
{
string pattern = @"\B(([\/]{0,}#(?:(?![×Þß÷þø]))([-'_0-9a-zÀ-ÿ]){1,})+)";
string input = @"#hashtag
a #hashtag
a #hashtag world
cool.#hashtag
##hashtag, but only until the comma and starting at second hash
#hashtag1#hashtag2 two separate matches
https://stackoverflow.com/questions/ask#notHashTag
Word#notHashTag
#ab is not too short to be a hashtag
I #love #chocolate
Hi #future-me. How are you?
Hi #fíre gone #allée #allèàoùî
Hi there #a#b
#hello Hi\nthere how#are you #doing now? #dog
Hi there #tag.
# Hi\nHow are you?
https://notium.org/some-url#something
https://notium.org/some-url/#something
#some_word
.#toto
# Markdown Example
Markdown allows you to easily include formatted text, images, and even formatted Dart code in your app.
## Titles
Setext-style
This is an H1 ============= This is an H2 -------------
Atx-style
# This is an H1 ## This is an H2 ###### This is an H6
Select the valid headers:
- [x] # hello
- [ ] #hello
## Links
[Google's Homepage][Google]
[inline-style](https://www.google.com) [reference-style][Google]
## Images
## Tables
|Syntax |Result |
|---------------------------------------|-------------------------------------|
|*italic 1* |italic 1 |
|_italic 2_ | italic 2 |
|**bold 1** |bold 1 |
|__bold 2__ |bold 2 |
|This is a ~~strikethrough~~ |This is a strikethrough |
|***italic bold 1*** |italic bold 1 |
|___italic bold 2___ |italic bold 2 |
|***~~italic bold strikethrough 1~~***|***italic bold strikethrough 1***|
|~~***italic bold strikethrough 2***~~|italic bold strikethrough 2|
## Styling
Style text as italic, bold, strikethrough, or inline code.
- Use bulleted lists
- To better clarify
- Your points
## Code blocks
Formatted Dart code looks really pretty too:
void main() { runApp(MaterialApp( home: Scaffold( body: Markdown(data: markdownData), ), )); }
## Markdown widget
This is an example of how to create your own Markdown widget:
Markdown(data: 'Hello world!');
Enjoy!
[Google]: https://www.google.com/
# DateTimeOffset
#csharp
Provides a combined #structure\tof `DateTime` with an `Offset` property defining a deviation from UTC. It doesn't associate a time zone with the offset.";
RegexOptions options = RegexOptions.IgnoreCase | RegexOptions.CultureInvariant;
foreach (Match m in Regex.Matches(input, pattern, options))
{
Console.WriteLine("'{0}' found at index {1}.", m.Value, m.Index);
}
}
}
Please keep in mind that these code samples are automatically generated and are not guaranteed to work. If you find any syntax errors, feel free to submit a bug report. For a full regex reference for C#, please visit: https://msdn.microsoft.com/en-us/library/system.text.regularexpressions.regex(v=vs.110).aspx