{"id":37021786,"url":"https://github.com/objectionary/eo-strings","last_synced_at":"2026-01-14T02:35:26.941Z","repository":{"id":49557697,"uuid":"516751637","full_name":"objectionary/eo-strings","owner":"objectionary","description":"EO Objects for Manipulations with Strings","archived":true,"fork":false,"pushed_at":"2024-08-07T03:44:53.000Z","size":328,"stargazers_count":12,"open_issues_count":17,"forks_count":9,"subscribers_count":4,"default_branch":"master","last_synced_at":"2025-07-30T07:41:46.420Z","etag":null,"topics":["eolang","java","oop","oop-principles"],"latest_commit_sha":null,"homepage":"","language":"Java","has_issues":true,"has_wiki":null,"has_pages":null,"mirror_url":null,"source_name":null,"license":"mit","status":null,"scm":"git","pull_requests_enabled":true,"icon_url":"https://github.com/objectionary.png","metadata":{"files":{"readme":"README.md","changelog":null,"contributing":null,"funding":null,"license":"LICENSE.txt","code_of_conduct":null,"threat_model":null,"audit":null,"citation":null,"codeowners":null,"security":null,"support":null,"governance":null,"roadmap":null,"authors":null,"dei":null,"publiccode":null,"codemeta":null}},"created_at":"2022-07-22T12:59:45.000Z","updated_at":"2025-04-12T02:42:12.000Z","dependencies_parsed_at":"2024-02-15T18:27:21.501Z","dependency_job_id":"c9c39200-a724-43f0-bfb9-9753861952ae","html_url":"https://github.com/objectionary/eo-strings","commit_stats":{"total_commits":262,"total_committers":11,"mean_commits":"23.818181818181817","dds":0.4541984732824428,"last_synced_commit":"9026a964b83a2b5ae63f5bdb5ddef6f7d1460727"},"previous_names":[],"tags_count":11,"template":false,"template_full_name":null,"purl":"pkg:github/objectionary/eo-strings","repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/objectionary%2Feo-strings","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/objectionary%2Feo-strings/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/objectionary%2Feo-strings/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/objectionary%2Feo-strings/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/objectionary","download_url":"https://codeload.github.com/objectionary/eo-strings/tar.gz/refs/heads/master","sbom_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/objectionary%2Feo-strings/sbom","scorecard":null,"host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":286080680,"owners_count":28408711,"icon_url":"https://github.com/github.png","version":null,"created_at":"2022-05-30T11:31:42.601Z","updated_at":"2026-01-14T01:52:23.358Z","status":"online","status_checked_at":"2026-01-14T02:00:06.678Z","response_time":107,"last_error":null,"robots_txt_status":"success","robots_txt_updated_at":"2025-07-24T06:49:26.215Z","robots_txt_url":"https://github.com/robots.txt","online":true,"can_crawl_api":true,"host_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub","repositories_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories","repository_names_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repository_names","owners_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners"}},"keywords":["eolang","java","oop","oop-principles"],"created_at":"2026-01-14T02:35:26.235Z","updated_at":"2026-01-14T02:35:26.929Z","avatar_url":"https://github.com/objectionary.png","language":"Java","readme":"\u003cimg alt=\"logo\" src=\"https://www.objectionary.com/cactus.svg\" height=\"100px\" /\u003e\n\n[![EO principles respected here](https://www.elegantobjects.org/badge.svg)](https://www.elegantobjects.org)\n[![DevOps By Rultor.com](http://www.rultor.com/b/objectionary/eo-strings)](http://www.rultor.com/p/objectionary/eo-strings)\n[![We recommend IntelliJ IDEA](https://www.elegantobjects.org/intellij-idea.svg)](https://www.jetbrains.com/idea/)\n\n[![mvn](https://github.com/objectionary/eo-strings/actions/workflows/mvn.yml/badge.svg?branch=master)](https://github.com/objectionary/eo-strings/actions/workflows/mvn.yml)\n[![PDD status](http://www.0pdd.com/svg?name=objectionary/eo-strings)](http://www.0pdd.com/p?name=objectionary/eo-strings)\n[![codecov](https://codecov.io/gh/cqfn/eo/branch/master/graph/badge.svg)](https://codecov.io/gh/cqfn/eo)\n[![Maven Central](https://img.shields.io/maven-central/v/org.eolang/eo-strings.svg)](https://maven-badges.herokuapp.com/maven-central/org.eolang/eo-strings)\n\n[![Hits-of-Code](https://hitsofcode.com/github/objectionary/eo-strings)](https://hitsofcode.com/view/github/objectionary/eo-strings)\n![Lines of code](https://img.shields.io/tokei/lines/github/objectionary/eo-strings)\n[![License](https://img.shields.io/badge/license-MIT-green.svg)](https://github.com/objectionary/eo-strings/blob/master/LICENSE.txt)\n\n**This repository is deprecated! We've moved all EO objects from this repository\nto [objectionary/eo](https://github.com/objectionary/eo).**\n\n[EO](https://www.eolang.org) objects for manipulations with strings.\n\nThis is how it works:\n\n### Text\nThe object `QQ.txt.text` is a decorator of `QQ.string`.\n\nThe attribute `is-empty` is TRUE if the length of the tuple is zero.\n\nThe attribute `trim` is a new string trimmed from both sides.\n\nThe attribute `joined` is a string that was obtained by concatenating\nthe strings from the tuple with the current string as a delimiter.\n\nThe attribute `contains` is TRUE if current string contains\n`substr` as a substring.\n\nThe attribute `ends-with` is TRUE if current string \nends with `substr`.\n\nThe attribute `starts-with` is TRUE if current string\nstarts with `substr`.\n\nThe attribute `index-of` is an index of `substr` in\ncurrent string as a substring.\n\nThe attribute `lower-case` is a new string in lower case.\n\nThe attribute `upper-case` is a new string in upper case.\n\nThe attribute `at` is a one sign from string by index.\n\nThe attribute `replaced` a new string where all substrings\n`target` was changed to `replacement`.\n\nThe attribute `as-int` is an int object derived from the string.\n\nThe attribute `as-float` is a float object derived from the string.\n\nThe attribute `compare` is an int value -\nresult of comparing in lexicographic order.\nReturns 0 if two strings are equal,\na negative number if the first string comes before the argument,\na positive number if the first string comes after the argument.\n\n\n```\n[] \u003e text-test\n  QQ.hamcrest.assert-that \u003e @\n    trim.\n      text\n        lower-case.\n          text\n            \" AbC \"\n    $.equal-to \"abc\"\n```\n\n## How to Contribute\n\nFork repository, make changes, send us a pull request.\nWe will review your changes and apply them to the `master` branch shortly,\nprovided they don't violate our quality standards. To avoid frustration,\nbefore sending us your pull request please run full Maven build:\n\n```bash\n$ mvn clean install -Pqulice\n```\n\nYou will need Maven 3.3+ and Java 8+.\n","funding_links":[],"categories":[],"sub_categories":[],"project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fobjectionary%2Feo-strings","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Fobjectionary%2Feo-strings","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fobjectionary%2Feo-strings/lists"}