[RFC]: add `@stdlib/assert/is-complex-string`
- Dominant language
- JavaScript
- Stars
- 6k
- Forks
- 1.3k
- Avg merge
- 1d 3h
- Merged PRs (30d)
- 611
Description
### Description
This RFC proposes adding package `@stdlib/assert/is-complex-string`.
The package should be similar in structure to [`@stdlib/complex/reviver-float32`](https://github.com/stdlib-js/stdlib/tree/64931c5fdb4abc3a339b619658d3b5acc089e556/lib/node_modules/%40stdlib/complex/reviver-float32).
The goal is to assert if an input string is of a complex number format string`(a + ib)` or `(a+bi)`
where, a and b are numbers
```js
function isComplexString( str ) => boolean
```
Eg : isComplexString( "32+12i" ) returns true
Eg : isComplexString( "32+i12" ) returns true
Eg : isComplexString( null ) returns true
Eg : isComplexString( "" ) returns false
Eg : isComplexString( "abcd+12i" ) returns false
Eg : isComplexString( Infinity ) returns false
> Package: `@stdlib/assert/is-complex-string` Alias: `isComplexString`
### Related Issues
Can help with issues #1332 and #1333
### Questions
This is my first issue so I'd like to know if the way I have proposed the feature is correct
### Other
_No response_
### Checklist
- [X] I have read and understood the [Code of Conduct](https://github.com/stdlib-js/stdlib/blob/develop/CODE_OF_CONDUCT.md).
- [X] Searched for existing issues and pull requests.
- [X] The issue name begins with `RFC:`.
Contributor guide
Research direction
Start by reviewing lib/node_modules/@stdlib/complex/reviver-float32 and the related issues #1332 and #1333. Clarify the accepted complex-string formats and contradictory examples, especially the null case, before defining what package behavior and completion criteria should be.
Written by the indexing model from the issue text.
Assessment
- Tech stack
- javascript
- Domain
- tooling
- Issue type
- Feature
- Difficulty
- 5/5
- Estimated time
- Over a week
- Activity status
- Stale
- Clarity
- Mostly clear
- Newbie friendliness
- 35/100