eladaus / url-detector Goto Github PK
View Code? Open in Web Editor NEWC# port of the popular LinkedIn Java library to detect and normalize URLs in text
License: Apache License 2.0
C# port of the popular LinkedIn Java library to detect and normalize URLs in text
License: Apache License 2.0
Adapt existing string-based logic to use Spans and implement performance comparisons.
Possible useful links:
https://github.com/discostu105/stringbuilder-tests/blob/master/StringBuilderTests/Program.cs#L105
Should use StringBuilder.ToString(start, length) overload, to reduce string allocations and theoretically cpu usage
Have found a bug in the parsing logic whereby the UrlDetector.DeadDefault logic gets stuck in an infinite loop and will crash your application in such simple cases as where a string contains a colon followed by an unexpected character combination such that it tests as NOT a username:password pair.
To repro, run this test:
[Fact]
public void TestDalesKillerString3() {
var sourceText = " :u "; // kills loop in UrlDetector.ReadDefault()
var flags = UrlDetectorOptions.AllowSingleLevelDomain;
var links = new UrlDetector(sourceText, flags)
// BEWARE THE INFINITE LOOP THAT HAPPENS HERE:
.Detect();
Assert.Equal(0, links.Count);
}
A declarative, efficient, and flexible JavaScript library for building user interfaces.
๐ Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.
TypeScript is a superset of JavaScript that compiles to clean JavaScript output.
An Open Source Machine Learning Framework for Everyone
The Web framework for perfectionists with deadlines.
A PHP framework for web artisans
Bring data to life with SVG, Canvas and HTML. ๐๐๐
JavaScript (JS) is a lightweight interpreted programming language with first-class functions.
Some thing interesting about web. New door for the world.
A server is a program made to process requests and deliver data to clients.
Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.
Some thing interesting about visualization, use data art
Some thing interesting about game, make everyone happy.
We are working to build community through open source technology. NB: members must have two-factor auth.
Open source projects and samples from Microsoft.
Google โค๏ธ Open Source for everyone.
Alibaba Open Source for everyone
Data-Driven Documents codes.
China tencent open source team.