CommentComment

One prominent feature of Swift’s upcoming iOS 16 and macOS Ventura releases is a complete re-think of regular expressions. If you haven’t seen the new APIs in use yet, the best place to get up to speed is this WWDC video. It’s the first major step forward for regular expressions in years!

We all reach for a regular expression for rough and ready string parsing, but if you’re anything like me, you end up parsing out the same types of data every time. Maybe you’re looking to pull out a number and then a date, followed by an email address or URL. Then, next time you’re just looking for an email address and a number.

You can build that kind of parsing toolkit with the new RegexBuilder APIs, but what if you didn’t need to?

I’ve been a huge fan of Soulver for so many years now that I can’t remember when I started using it, but it remains an integral part of the apps I use every day. SoulverCore has been available for a couple of years, which is the main calculation engine that powers the app. Then, on Wednesday, Zac Cohan sent across a link to his latest library SoulverStringParsing, and I couldn’t help thinking that it’d be a better fit than even the new RegexBuilder APIs for common string parsing tasks.

You should check out the README for some examples, but it maps very much onto how I was describing my use of regular expressions. Tell it that you’re looking for a couple of numbers and an email address, and it’ll figure it out. It won’t be an ideal solution if you’re looking to strictly validate the exact format of a string, but it’s going to be a fantastic way to capture a few values quickly.

I’d be less excited about this API if it hadn’t come out of an app I use daily to mix text and calculations, and it never gets the parsing wrong. The main reason I’m talking about it, though, is that I love when something makes me re-think a problem that I thought I had all figured out. That’s happened twice this year with string parsing. First, with RegexBuilder, which I still love, and now with Zac’s new library.

Note: You may have noticed that neither SoulverCore nor SoulverStringParsing have an open-source license. They are free to use in personal or private projects, and I had a quick chat with Zac about small developers using these libraries in public/small commercial projects. It sounded like he was being very generous with licensing as long as you’re not building a Soulver clone, so drop him a note if you think you’d like to use them.

Dave Verwer  

News

Tools


Code



Business and Marketing

Jobs

Senior iOS Engineer @ Polywork – Polywork is a well-funded startup looking for a second iOS developer to join the team. We’re building a modern professional social network that recognizes people as more than their job titles. – Remote (within US timezones)

Mobile Full Stack Engineer @ Expensify – Join our passionate team of top-notch engineers to solve a real-world problem, and help people spend less time managing expenses and more time pursuing their real goals. – Remote (Anywhere) with some on-site work (Australia, United Kingdom, or United States in CA, MI, NY, or OR)

iOS SDK Developer @ Stream – You will write and maintain our open-source SDKs that are used by hundreds of our customers and consumed by hundreds of millions of their users. – Remote (within US or European timezones)

Senior iOS Engineer (Swift) @ GoodNotes – GoodNotes is a top-rated paid-for productivity app, available to use on iPad, iPhone and Mac devices with over 10m MAU. You will own your projects and work alongside a high-calibre cross-functional team to continue delivering a product our users love! – Remote (within European or Asia-Pacific timezones) or on-site (Hong Kong or United Kingdom)

Senior iOS Engineer @ Sendwave – We currently have a 4.6-star rating on Trustpilot — people put their faith in us to deliver their money quickly, securely, and affordably. And we’re pretty darn proud of that. – Remote (within US or European timezones)

 

Yes, we may be heading into a downturn or even a recession, but that doesn't mean great companies have stopped hiring completely! It's very much worth looking at the full list of open positions over at iOS Dev Jobs.

 

And finally...

My god, it’s full of stars… 👨‍🚀