Comments (2)
Happy to see this.
Thanks
from swiftrichstring.
Hi,
With 0.9.9 I've introduced a new function to String
instances called func set(regExpStyles: [RegExpPatternStyles], default dStyle: Style? = nil) -> NSMutableAttributedString
.
This function accepts:
- an array of
RegExpPatternStyles
objects. A singleRegExpPatternStyles
is a struct which defines a regular expression and an array ofStyle
s to apply when found. - a default
Style
: optional, if specified this style is applied before any other regular expression, to the entire string.
Following your request we can, for example, define two regular expression to search email and urls in a string:
let regexp_url = "http?://([-\\w\\.]+)+(:\\d+)?(/([\\w/_\\.]*(\\?\\S+)?)?)?"
let regexp_email = "([A-Za-z0-9_\\-\\.\\+])+\\@([A-Za-z0-9_\\-\\.])+\\.([A-Za-z]+)"
and defines two styles to apply when regexp did match:
let style_email = RegExpPatternStyles(pattern: regexp_email) {
$0.color = .red
}!
let style_url = RegExpPatternStyles(pattern: regexp_url) {
$0.color = .blue
}!
Then:
let text_example = "My email is [email protected] and my website is http://www.danielemargutti.com"
var result = text_example.set(regExpStyles: [style_email, style_url])
Will produce this:
0.9.9 will be released soon.
Thank you for your suggestion.
Have a nice day.
from swiftrichstring.
Related Issues (20)
- DynamicType not working in a UITableViewCell that reuses a style
- 'localizedLowercase' is only available in macOS 10.11 or newer
- How Can I Get the height of the UITextView HOT 6
- When using a StyleGroup, the ParagraphStyles are not inherited from the base style.
- Allow users to overload style property observer
- Image attachment's bounds takes a String instead of CGRect HOT 1
- Table support
- No line breaks after paragraphs HOT 3
- iOS 15 Compatibility HOT 2
- After updating Xcode to 13 beta 5, getting ambiguous error HOT 3
- Xcode 13 run bugs: 'AttributedString' is ambiguous for type lookup in this context HOT 2
- How to not apply parent tag's style to child ones?
- 支持拼音+文字同时显示吗
- Using img tags to use an image from another bundle doesn't work.
- Support gif file
- FEATURE REQUEST: A font "size" attribute within StandardXMLAttributesResolver would be immensely useful.
- AsyncTextAttachment并不能很好的支持UILabel, 将Demo中的UITextView替换成UILabel, 无法显示图片, HOT 5
- Is the project dead? HOT 2
- There is a problem with the method running : convenience init?(image: Image?, bounds: String? = nil) HOT 1
- Support Vision Pro
Recommend Projects
-
React
A declarative, efficient, and flexible JavaScript library for building user interfaces.
-
Vue.js
🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.
-
Typescript
TypeScript is a superset of JavaScript that compiles to clean JavaScript output.
-
TensorFlow
An Open Source Machine Learning Framework for Everyone
-
Django
The Web framework for perfectionists with deadlines.
-
Laravel
A PHP framework for web artisans
-
D3
Bring data to life with SVG, Canvas and HTML. 📊📈🎉
-
Recommend Topics
-
javascript
JavaScript (JS) is a lightweight interpreted programming language with first-class functions.
-
web
Some thing interesting about web. New door for the world.
-
server
A server is a program made to process requests and deliver data to clients.
-
Machine learning
Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.
-
Visualization
Some thing interesting about visualization, use data art
-
Game
Some thing interesting about game, make everyone happy.
Recommend Org
-
Facebook
We are working to build community through open source technology. NB: members must have two-factor auth.
-
Microsoft
Open source projects and samples from Microsoft.
-
Google
Google ❤️ Open Source for everyone.
-
Alibaba
Alibaba Open Source for everyone
-
D3
Data-Driven Documents codes.
-
Tencent
China tencent open source team.
from swiftrichstring.